{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "Perceptron.ipynb",
      "version": "0.3.2",
      "provenance": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "metadata": {
        "id": "M49QsByfnQgf",
        "colab_type": "code",
        "outputId": "e4c9e3a7-47f4-4667-c83e-4efee2ad83cb",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 139
        }
      },
      "cell_type": "code",
      "source": [
        "!pip3 install torch"
      ],
      "execution_count": 1,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Collecting torch\n",
            "\u001b[?25l  Downloading https://files.pythonhosted.org/packages/7e/60/66415660aa46b23b5e1b72bc762e816736ce8d7260213e22365af51e8f9c/torch-1.0.0-cp36-cp36m-manylinux1_x86_64.whl (591.8MB)\n",
            "\u001b[K    100% |████████████████████████████████| 591.8MB 25kB/s \n",
            "tcmalloc: large alloc 1073750016 bytes == 0x60eb4000 @  0x7ffa63ed32a4 0x591a07 0x5b5d56 0x502e9a 0x506859 0x502209 0x502f3d 0x506859 0x504c28 0x502540 0x502f3d 0x506859 0x504c28 0x502540 0x502f3d 0x506859 0x504c28 0x502540 0x502f3d 0x507641 0x502209 0x502f3d 0x506859 0x504c28 0x502540 0x502f3d 0x507641 0x504c28 0x502540 0x502f3d 0x507641\n",
            "\u001b[?25hInstalling collected packages: torch\n",
            "Successfully installed torch-1.0.0\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "Ryap-Zb2pFEY",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "import torch\n",
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "import torch.nn as nn\n",
        "from sklearn import datasets"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "NiC6YpK3xMFH",
        "colab_type": "code",
        "outputId": "6b807219-545c-4326-ca5a-683690d0a616",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 34
        }
      },
      "cell_type": "code",
      "source": [
        "  n_pts = 100\n",
        "  centers = [[-0.5, 0.5], [0.5, -0.5]]\n",
        "  X, y = datasets.make_blobs(n_samples=n_pts, random_state=123, centers=centers, cluster_std=0.4)\n",
        "  \n",
        "  x_data = torch.Tensor(X)\n",
        "  y_data = torch.Tensor(y.reshape(100, 1))\n",
        "  print(y.shape)"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "(100,)\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "YuBCy1etmbXv",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "def scatter_plot():\n",
        "  plt.scatter(X[y==0, 0], X[y==0, 1])\n",
        "  plt.scatter(X[y==1, 0], X[y==1, 1])"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "MNTairXO7CoY",
        "colab_type": "code",
        "outputId": "d7ec5dcf-f781-4bce-b731-746d6557269a",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 347
        }
      },
      "cell_type": "code",
      "source": [
        "scatter_plot()"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\nCYkAAAAASUVORK5CYII=\n",
            "text/plain": [
              "<matplotlib.figure.Figure at 0x7fae9efb2438>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "0h9thO1Q4-rp",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "class Model(nn.Module):\n",
        "    def __init__(self, input_size, output_size):\n",
        "      super().__init__() \n",
        "      self.linear = nn.Linear(input_size, output_size)\n",
        "    def forward(self, x):\n",
        "      pred = torch.sigmoid(self.linear(x))\n",
        "      return pred\n",
        "    def predict(self, x):\n",
        "      pred = self.forward(x)\n",
        "      if pred >= 0.5:\n",
        "        return 1\n",
        "      else:\n",
        "        return 0"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "LB63faE7qUQL",
        "colab_type": "code",
        "outputId": "c7544709-d6c8-44c6-c931-b3954d1a17f3",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 68
        }
      },
      "cell_type": "code",
      "source": [
        "torch.manual_seed(2)\n",
        "model = Model(2, 1)\n",
        "print(list(model.parameters()))"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "[Parameter containing:\n",
            "tensor([[ 0.1622, -0.1683]], requires_grad=True), Parameter containing:\n",
            "tensor([0.1939], requires_grad=True)]\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "STukrpJxsFh4",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "[w, b] = model.parameters()\n",
        "w1, w2 = w.view(2)\n",
        "def get_params():\n",
        "  return (w1.item(), w2.item(), b[0].item())"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "DTnldDw01Hm3",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "def plot_fit(title):\n",
        "  plt.title = title\n",
        "  w1, w2, b1 = get_params()\n",
        "  x1 = np.array([-2, 2])\n",
        "  x2 = (w1*x1 + b1)/(-w2)\n",
        "  plt.plot(x1, x2, 'r')\n",
        "  scatter_plot()\n",
        "  plt.show()"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "LGTMKS2b6awq",
        "colab_type": "code",
        "outputId": "7c5aac23-5d1e-421d-b1d8-f5b5ea36d8ef",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 347
        }
      },
      "cell_type": "code",
      "source": [
        "plot_fit('Initial Model')"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAecAAAFKCAYAAAAnj5dkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzs3Xd8U/X6B/BPRpM0TdomkDJEr8pw\nlCHIFClSW0FRUKBWFEXEASLLgsrwgqIoyB6CIi4clwviz4GKlwsIShEFZNRRhsoSSNu0TZp9cn5/\n1Pa2NM08yRl53vd1Xy/TE3Keb06bJ893HRnLsiwIIYQQIhhyvgMghBBCSH2UnAkhhBCBoeRMCCGE\nCAwlZ0IIIURgKDkTQgghAkPJmRBCCBEYJd8B1DCbrZy+nsGghcVi5/Q1+UJtESaptEUq7QCoLUIk\nlXYA3LfFZNI3ekyylbNSqeA7BM5QW4RJKm2RSjsAaosQSaUdQHzbItnkTAghhIgVJWdCCCFEYCg5\nE0IIIQJDyZkQQggRGErOhBBCiMBEtZRq/vz52LdvH7xeLx577DHccssttcd2796NRYsWQaFQICsr\nC+PGjYs6WEIIISQRRJyc9+zZg6NHj2L9+vWwWCy466676iXnF154AWvXrkWzZs0wYsQI9O/fH23a\ntOEkaEIIIUTKIk7O3bp1Q8eOHQEAqampcDgcYBgGCoUCp06dQlpaGlq0aAEA6Nu3LwoLCyk5E0II\nISGIeMxZoVBAq9UCADZu3IisrCwoFNULtM1mM4xGY+1zjUYjzGZzlKESQgghiSHq7Tu3bt2KjRs3\n4s0334zqdQwGLee7rwTaGk1sqC3CJJW2SKUdALVFiKTSDiB+bYkqOe/atQurV6/GG2+8Ab3+fwFn\nZGSgpKSk9vH58+eRkZER8LW43nvVZNJzvl83X6gtwiSVtkilHQC1RYik0g7FkcMwVpXB3KMvZ68Z\nk721rVYr5s+fj9deew3p6en1jrVq1Qo2mw2nT5+G1+vF9u3b0bt370hPRQghhPDD5YJ27vMw5GYB\n994L+HxxOW3ElfMXX3wBi8WCSZMm1f6sR48euOqqq5Cbm4vZs2ejoKAAAHDbbbfhiiuuiD5aQggh\nJE6UBw9AP2EslL/8DObSy6B49x1AHp/tQSJOzvn5+cjPz2/0eLdu3bB+/fpIX54QQgjhh9sN7aJ5\n0C5dBBnDwDFyNKpmPY+mV7QE4tRFL5j7ORNCCCF8Ux4+CP34sVD+fARMq0thXbwCnr794h4Hbd9J\nCCGEuN3QznsR6f37QfnzETjuHwXLN4W8JGaAKmdCCCEJTnHkMFLHj4Gy6DCYS1rBumg5PP1u5jUm\nqpwJIYQkJo8H2gUvw3BLXyiLDsNx3wPV1TLPiRmgypkQQkgCUvxcBP34MUg6fBBMi5awLl4OT3Yu\n32HVosqZEEJI4vB6oV38Cgy5WUg6fBCO4SNg2blHUIkZoMqZEEJIglD88jP0E8Yi6eABMM1bwLZo\nGdw5/fkOyy+qnAkhhEib14vkpQurq+WDB+DMvxeWnXsEm5gBqpwJIYRImOK3X6GfMAZJB/aDadYc\ntoVL4b7lVr7DCooqZ0IIIdLj9SJ52WIYbr4RSQf2wzksv7paFkFiBqhyJoQQIjGKo8XV1fK+H+Ez\nZaBywVK4bx3Id1hhocqZEEKINDAMklcshSG7N5L2/QjnkDyU7fpedIkZoMqZEEKIBCiOHa2eif3j\nXviamlC5egncA+/gO6yIUeVMCCFEvBgGyatWVFfLP+6F866hKNu1V9SJGaDKmRBCiEgpThyDfsLj\nSNq7B76mTVG5cg3cdwzmOyxOUOVMCCFEXHw+JL+2EoZ+vZG0dw+cg+5C2c69kknMAFXOhBBCRER+\n4jj0k8ZBtWc3fE2awLpsFVyDh/AdFueociaEECJ8Ph80b6yGsd8NUO3ZDdftg1G2c68kEzNAlTMh\nhBCBk//xe3W1vPtb+AwGWJeshOvOoYBMxndoMUOVMyGEEGHy+aBZ+zqMN90A1e5v4br19upq+a5h\nkk7MAFXOhBBCBEj+5x/V1fJ3u+BLT4d14RtwDcmTfFKuQcmZEEKIcPh80LzzJnTPPQuZvQquAbfB\n9soS+Jo15zuyuKLkTAghRBDkp05CP+kJqHbtgC8tHdaVr8M1LD9hquW6KDkTQgjhF8tC8+5bSJk9\nE/IqG1y3DIBtwVL4mrfgOzLeUHImhBDCG/npU9BPfgKqb7bDl5qGymWr4Mq/NyGr5bqiSs7FxcV4\n/PHH8eCDD2LEiBH1jmVnZ6N58+ZQKBQAgAULFqBZs2bRnI4QQohUsCw077+LlH9Oh9xmhevmXNgW\nLYevRUu+IxOEiJOz3W7HnDlz0KtXr0afs2bNGqSkpER6CkIIIRIkP3umulre/l/49KmoXPoqXPfc\nl/DVcl0Rr3NWqVRYs2YNMjIyuIyHEEKIVLEs1B++B0OfHlBt/y/c/W6GZeceuIaPoMR8kYgrZ6VS\nCaUy8D+fNWsWzpw5g+uvvx4FBQWQ0ZtPCCEJSf7XWegKJkC99Wv4dHpYFy2H874HKCk3ImYTwiZM\nmIA+ffogLS0N48aNw5YtWzBgwIBGn28waKFUKjiNwWTSc/p6fKK2CJNU2iKVdgDUFsFhWZi+2ARM\nnAhUVAC5uZC/8Qb0l10GMbYuXtckZsn5zjvvrP3vrKwsFBcXB0zOFoud0/ObTHqYzVZOX5Mv1BZh\nkkpbpNIOgNoiNPJzf6HJtCeBzZvhS9GhasFSOO9/sLpaFmHbuL4mgRJ9TPbWtlqtGD16NNxuNwDg\nhx9+QNu2bWNxKkIIIULDslD/+0MY+vQANm+Gu89NsOzcA+cDo6gbO0QRV85HjhzBvHnzcObMGSiV\nSmzZsgXZ2dlo1aoVcnNzkZWVhfz8fKjValx77bUBq2ZCCHdcHgYVNhfSdGqok7gdKiIkGPn5c9BN\nnQT1V1+A1aYAq1ahYgitWw5XxMm5ffv2WLduXaPHR44ciZEjR0b68oSQMDE+H9ZvO4YDxWaUVbpg\nTFWjczsT8rPbQCEX3w3o6EuGyLAs1B/9G7rpUyEvL4f7xixYF69Ak64dRNmFzTfaIYwQiVi/7Ri2\n/ni69nFppav28b057fgKK2xS+5KRCGQXLkA/dRLUX34OVquF9aUFcI56GKDrFTF65wiRAJeHwYFi\ns99jB4pL4PIwcY4ocjVfMkorXWDxvy8Z67cd4zs0cjGWhfrjjTBmdYf6y8/hvuFGlO0ohHP0o5SY\no0TvHiESUGFzoazS5feYxepEhc3/MaGR0pcMqZOZzUgd/QBSH3sIMocD1rnzUbHpc/guv4Lv0CSB\nkjMhEpCmU8OYqvZ7zKDXIE3n/5jQSOVLhtSpP9lUXS1//gk8PXqhbPtuOB8eQ9Uyh+idJEQC1EkK\ndG5n8nusc7umoplQJZUvGVIlKymB/uGRSH3kQcjsdtjmvITyT76E78rWfIcmOTQhjBCJyM9uA6C6\n+9didcKg16Bzu6a1PxeDmi8ZdSe21RDTlwwpUn32CfRPT4a8pASe7j1hXfYqmCvF87slNpScCZEI\nhVyOe3PaYWjf1qJegiSFLxlSIisthW5aATT/twmsRgPbc3PheHQsoBDf75aYUHImRGLUSQpkGLR8\nhxExqXzJkALV5s+gnzoJ8hIzPNd3g3X5ajBtaLfHeKDkTAgRJLF/yRAzWVkpdNOnQrNpI1i1GrZZ\nL8AxZhxVy3FEyZkQQkgt1ZeboZ8yEXLzBXiu7wrrstVg2opnExupoORMCCEEMksZdDOehmbjerAq\nFWzPPg/H2CcAJaUJPtC7TogE0D7UJBqqr7+ErmAiFOfPwdO5S3W1fNXVfIeV0Cg5EyJitA81iYas\n3ALdzGeg+feHYJOSYJsxC45xE6laFgC6AoSImFRudkHiT7V1C3RPToDi3F/wdOoM67JVYK65lu+w\nyN/oqzWRJJeHwQWLXdJ7MdM+1CQSsopy6CY+jrR78yAvLUHVtGdR/sVWSswCQ5UzkZRE6uYNZR9q\nWopE6kra9h/oJ4+H4q+z8HToVF0tZ7bnOyzih7Q+rUjCS6TbDdI+1CRUssoK6CY/gfR7hkJuvoCq\np6aj/KttlJgFjJIzkYxE6+aVys0uSGwlbf8vDFk9kfz+u/C07wjL19/APuUZICmJ79BIANStTSRD\n6t28/pZL0T7UpDEyayVSZs9E8rq3wSqVqJryDOyTpgAqFd+hkRBQciaSUdPNW+onQYu5mzfYODrt\nQ00ulvTNdugnPwHF6VPwXpMJ64rV8HboxHdYJAzUrU0kQ6rdvKGMo9fsQy3WNhJuyGxW6KZORnre\nYMj/OouqJ5+C5T/fUGIWIaqciaRIrZs32Dj60L6tKSETAEDSrm+qq+WTf8J79TWwLl8Nb6fOfIdF\nIkTJmUiK1Lp5pT6OTjhgs0E3559IfusNsAoFqiZNgb3gaUAtzmEcUo2SM5EkqdxuUKrj6IQbSbu/\nhX7C41Cc/APeq66GddkqeDtfz3dYhAM05kyIgEl1HJ1EqaoKKdOnIv3O2yA/fRL2CU/C8p+dlJgl\nJKrkXFxcjJycHLz33nsNju3evRvDhg1Dfn4+Vq5cGc1pCElo+dltkNO1FZqkaiCXAU1SNcjp2kq0\n4+gkOkmF38HY7wZo33gN3rbtUL75P6iaORvQaPgOjXAo4m5tu92OOXPmoFevXn6Pv/DCC1i7di2a\nNWuGESNGoH///mjThj5MSHjEeCtErmOW2jg6iZDdjpS5zyF5zWpAJoN93ERUPT2DkrJERZycVSoV\n1qxZgzVr1jQ4durUKaSlpaFFixYAgL59+6KwsJCSMwmZGPfIjnXMUhlHJ+FT7imEfuJYKH8/AW+b\nttVjy1278x0WiaGIk7NSqYSykXt+ms1mGI3G2sdGoxGnTp0K+HoGgxZKJbfVgMmk5/T1+JRobVnz\nf4f93gpRm6zCI3d2iGV4YanbFrHE7E+i/X6JhUmnBGbOBBYvrv5BQQGUc+bAkJzMb2BhktQ1iVNb\nBDNb22Kxc/p6JpMeZrOV09fkS6K1xeVh8N3BM36PfXfwLG7tfqkgunX1ack4/kdp7YxpMcTsT6jX\nRAxd6pL6Wzl6GN4HRkJ5/Bi8V7aGdekqeHv0BGxewCaeNkrqmnDclkCJPibJOSMjAyUlJbWPz58/\nj4yMjFicigQglg/Ui8VzbW8k71FN9/Wh46UwWxwwpqpx9WUGv8udYhFzPIlxeEH0HA6kzHsRWLUc\nCgD2x8ahatqzgFZ8vz8kcjFJzq1atYLNZsPp06fRvHlzbN++HQsWLIjFqYgfYvtAvThBxmNtbzTv\nUc12mjVKK1347sg5aFRyON2+mMXMB39trXl8b047vsKSLOWPe6GfMBbKY0eBNm1QvmglvD39T7ol\n0hZxcj5y5AjmzZuHM2fOQKlUYsuWLcjOzkarVq2Qm5uL2bNno6CgAABw22234YorruAsaBKYWD5Q\nAyXIzu1M9dpQg6u1vZG+R4G20wRkfn8q1vXItHVoHDmdSJk/F8mvLoPM54P90bHQLl4Ab5W0bnNK\nQhdxcm7fvj3WrVvX6PFu3bph/fr1kb48iZCYPlADJchY7pEdzXsUqMvd7WFwQ/vm+O1kuST29aat\nQ+NDeWAf9OPHQFn8G5h/XA7r0lfhueFGaLVaoEoaY7UkfIKZEEa4IZYP1FASZKzW9kbzHgXrcr+/\n/1W15xDbWP/FaOvQGHO5kPLKS0hesQQynw+O0Y/CNvM5ICWF78iIAAhvAJJEpeYD1R8hfaCGkiCB\n2NwKMZr3KJTtNKVy+0baOjR2lD/thyE3C9pli+BrdSnKN30O20sLKDGTWpScJUYsH6h8fomI9j2q\n2U4zw5As6e00XR4G/Tpfgn6dWwbcOtTlYXDBYofLQ+OjQblc0L70PNJvvRnKX3+BY9TDKNtRCM+N\nWXxHRgSGurUlSAz3NK5JkJFO+op2mVg071HNdpqPDf3fOmehfOnhgr+Jeh3bNEXO9a1gTNXUtlVs\nqwL4pjz0U/XY8i8/g7n0MliXrISnT1++wyICRclZgsSyF3MkCZKrhMDFe6RRKQUxfs81fxP1tu8/\nA4VcVm8mu1hWBfDO7YZ20Xxoly6EjGHgeOAhVM2eA1YnnV2zCPcoOUuY0PdijiRBcp0QhP4exVuo\nM9nFtCqAT4rDh5A6fgyUPx8Bc0krWBevgOembL7DIiJAfU+Ed6FOoAqWEOI55unyMPirpEpy46yh\nTtQL9XkJy+OB9pWXYOh/E5Q/H4Hj/gdh2bmHEjMJGVXORDSEsEysXre61QWjXlrjrKEun6JlVo1T\nHDkM/YSxSDpyCEzLS2BdtBye7By+wyIiI/5PE5IwhLBMrKZbvbTSBZb9X7f6+m3HYn7ueAh1JrtY\nVgXElccD7cJ5MPS/CUlHDsFx7/3V1TIlZhIBSs5ENLhMCJEs/xFSt3os1SwVC7R8KpznJQLFz0VI\nv/VmpMx7Eb6mJlR8uBG2JSvBpqbxHRoRKerWJqIS7TKxaGZ7C6FbPR5CnagnllUBMeX1Qrt8MbQL\nXobM44Hznvtgm/MS2LR0viMjIkfJmYhKtAkhmtneiTbOGupM9kSd8a749RfoJ4xB0k8HwDRrDtui\nZXDnDuA7LCIR1K1NRCmSLTKj7ZamcVYCAPB6kbxsEQw5fZD00wE47x4Oy67vKTETTlHlTBIGF93S\nYth9LVFEu0tcJBS//Qr9xLFI2r8PTEYz2BYug7v/rXE5N0kslJxJwuCiW7put7pClQTG7RFkxcxH\n4oqXQPMGYndSBsmvLkfK/Bchc7ngHHo3bHPngzUYY3dOktAoOZOEEe1+3he/lqlpCsxmYd1vNxH2\nuw40b2Di8Os5P5/iaHH1uuV9P8BnykDlgqVw3zqQ8/MQUhclZ5JQpN4tLfX9roPNG3C6vdydjGGQ\n/NqrSHnp+epqecgw2Oa+AtbYhLtzENIISs5EFLjqppXy8p9E2O862LwBS6WLkw81xfGj0E94HEk/\nfA9f06aoXLUW7tsHcfDKhISGkjMRtFh100px+U8irMMONm/AkKqGtcIR+QkYBslrViFl7vOQOZ1w\n3jkEtpcWgm1C1TKJL2kMQhFRCWd3rnrbZUJ622VySQjbm8ZasOVsGlXk9YbixDGkD74Vun9OB5uS\ngoq178L6+tuUmAkvqHImccP4fFjzf4fx3cEzIVXBidBNyyUuJ7zFWzjDFpzPG/D5kPzGaqS8+Bxk\nDgdcd9wJ68sLwZr8fwkgJB4oOZO4CXeyUiJ003JNbBPeIhm24HLegPz3E9BPGgdV4XfwGY2wLlsF\n1+Ah0TSJEE5QciZxEUkVnGjbZXJBbBPeopldHtW8AZ8Pmjdfh+6F2ZDZ7XDddges8xeDzcgI62Xc\njBsVLivS1HqoFKrIYiHED0rOJC4iqYLF3E3LNzFMeONr2EL+x+/V1fLub+EzGGBdtByuu4YBMlnI\nr8H4GGw6thmHzEWwuMphUKejoykTQ9oMhEJOv5ckepScSVxEWgWLrZuWhC7uwxY+HzRvr4Xu+X9C\nZq+Ca8BAWF9ZArZZs7BfatOxzdhx+tvax2UuS+3jvHa05IpEL+LkPHfuXBw8eBAymQzTp09Hx44d\na49lZ2ejefPmUCiqv0EuWLAAzSL4AyDSEWkVLLZu2kCkvKVmJOI5bCE/+Sf0k5+Aatc38KWnw7pg\nDVxD7w6rWq7hZtw4ZC7ye+xwSREGtx5AXdwkahEl57179+LPP//E+vXrcfz4cUyfPh3r16+v95w1\na9YgJSWFkyCJNORnt4E2WYXvDp4NuwoWQzdtYxJhS81IxGXYgmWhefctpMyeCXmVDa7+t8K2YCl8\nzZpH/JIVLissrnK/x8qc5ahwWWHS0vIrEp2IknNhYSFycnIAAK1bt0ZFRQVsNht0Oh2nwRFpUcjl\neOTODri1+6WcV5BCrkqlvqVmNGI5bCE/dRL6yeOh2rkdvrR0VC5fDdfdwyOqlutKU+thUKejzGVp\ncMyoSUeaWh/V6xMCRJicS0pKkJmZWfvYaDTCbDbXS86zZs3CmTNncP3116OgoACyIH8QBoMWSiW3\nH6omk3T+SKTUllYt09GKo9diGB/e/KwIe478BXO5A6b0ZPRs3wIP3ZEJhcJ/Vep0e2GpdMGQqo5q\n0wog+HVxur04dLzU77FDx0vx2NDkqGPgAp+/XxOHX8/tNWmqA954AygoAKxWYOBAyF9/HaktW3IU\nMdDzH9fhi+LtDX7e47LrcElz7qpmqfzdS6UdQPzawsmnAsuy9R5PmDABffr0QVpaGsaNG4ctW7Zg\nwIDANyK3WOxchFLLZNIL7o5BkaK2NO6DrcX1qtILFgc+3XUCdoe7QVXKdfdyKG25YLHDbPG/nWRJ\nuQPH/yjlrLs+0t4Dofx+KQFYKxyIJhKTsxzuBx6Easc2+FLTYFu2Cq78e6urZQ7bOKDlLbDbPThc\nUoQyZzmMmnR0aJqJAS1v4ey9FMp1iZZU2gFw35ZAiT6i5JyRkYGSkpLaxxcuXICpzm46d955Z+1/\nZ2Vlobi4OGhyJiRc4S7F4aN7OR6TnmhMG9Vjyx+sA2ZNh6qyEu7sHFgXLYev5SUxOZ1CrkBeu0EY\n3HoArXMmMRHRX27v3r2xZcsWAEBRUREyMjJqu7StVitGjx4Nt9sNAPjhhx/Qtm1bjsIl5H9CWYpT\nI1giD2Wf74s53d6ge4QH2wuai/HxRN9/XH72DNKGD4V+8hMAAOuSlaj48KOYJea6VAoVTNomlJgJ\n5yKqnLt06YLMzEzcc889kMlkmDVrFjZt2gS9Xo/c3FxkZWUhPz8farUa1157LVXNJCbCqUq5XFNb\nU6keOl4Ks8URtFKN5aSnhN5/nGWh/tf70D07DfLKCrhvyobq3bfh1KTzHRkhUYt4zHnKlCn1Hl99\n9dW1/z1y5EiMHDky8qgICUE4S3G47F4Ot3s8lmu1E3X/cflfZ6ErmAD11q/h0+lhXbQczvsegCkj\nldOxZUL4kiADUkSq8rPbIKdrKzRJ1UAuA5qkapDTtVWDqpSr7uVousdr1mpzWckmwm0i62FZqNd/\nAENWT6i3fg13Vj9Ydu6Bc8TIqJdIESIk/K/hICQK4VSlXHQvc1GpcrkmO5H2H5efPwfdlIlQb/kS\nvhQdrK8sgfOBUZSUiSRRchYRIW+0wbdQdhBTyOUY2rc1sjq1BFgWpgiq2Gi6x2M1q1ry+4+zLNQb\n10M34ynIy8vh7tMX1sUr4LvsH3xHRkjMUHIWAYbx4YOtxYm9VCZKXCXGaCrVWC3lktL+4xeTnT8P\n/dRJUH+1Gaw2BdZ5i+Ac+RBAv/dE4ig5i8CbnxXR9o9R4jIx1lSkh46XoqTcEVKlGo9Z1WLef7wB\nloX6443QTZsCucUCd+8+sC5ZCd8/Luc7MkLigpKzwLk8DPYc+cvvMckvleEI14mxplJ9bGgyjv9R\nGlKlmqizqiMhu3AB+qcmQ/3FZ2C1WlhfegXOUY9QtUwSCv22C1yFzQVzuf/tHy/eaIP4F85mJeHQ\nqJQhz75OuFnVkWBZqP/vIxizukP9xWdw9+qNsu274Rz9GCVmknDoN17g0nRqmNKT/R4T24e6y8Pg\nr5KqiHbjioYQEmM8dgoTM5nZjNTRDyD10VGQORywvTgPFR9vhu+KK/kOjRBeULe2wKmTFOjZvgU+\n3XWiwTGxfKjXm4xldcGoj++ENqEsNxLzrOpYrhRQffox9E8/CXlpKTw9eqFy6avwXdma03MQIjaU\nnEXgoTsyYXe44/qhzuWHsRDuZyyExCjEWdU1vRmMh/EbSyyWf7kZNypcVhhsbhhmTIPmk01gNRrY\n5rwEx8NjAIXwv3ASEmuUnEVAoYjfhzrXH8ZC2ftZSIlRCLOqQ+3N4PKLFeNjsOnYZhwyF6Htzn14\nZO230FTa4e7WHbZlq8C0phvkEFKDkrOIxONDnesqV2izlIWQGIUglOvM9RerTcc248dftmL0W9+i\n9+5jcCcp8M79vWB/eCyGUWImpB6aEEZqxeK2ikKYjEXqC/U6RzLL3eVh/N5G0824Ifv8Yyyash69\ndx9DcdtmmDovD5sHdsIhyy9wM+4oW0WItFDlTGrFosoVymQsIYv3tqyhXudwtioNNByirChHytMT\nMfb/PoE7SYF19/XE5wM7gv27+7zMWY4KlxUmbZPYNJgQEaLkTGpxeVvFuoQwGStSsUycsdprO5hQ\nr3M4X6wa6ya/Yt83GLhuPhQXzuP3ti2wbEwWzlxiqPdaRk060tR6rppHiCRQcia1YlXl1p2MpVAl\ngXF7BF8xxyNx8jWLPdB11mqUUCr+d5enUL5Y+esmT3Ha8Oj2N5D9yw6wKhVsM2fjq5wrcOZcYYNz\ndmiaCZVCxVXzCJEESs6knlhWueokBUxNU2A2W6N+rViLdeLkexZ7fnYb/HayHKcu2Or9/NQFG9Zv\nO1bbxlBmuV/cTd7txA8Y959X0aTKgqPN2kC29g2kde+Cu3wMWKUCh0uKUOYsh1GTjg5NMzGkzcCY\ntTNSNcu90tR6+uJAeEHJmdQjpCVHfIlH4uR7FruXYWF3evwe89fGQLPca7rJnRdK8ciOtbj55+3w\nyJV4t/d92JF9L57v3AkAoJArkNduEAa3HiDYxFd3uZfFVQ6DOh0dTdVfIBTyxPo7IPyi5Ez84nLJ\nUd1xWzGIR+KM1fh+qLhsozpJgTvtxbjx3efR1FaKYxlXYkn/CfjTdDlyrmnW4IuMSqGKy+SvcKtf\nN+PGv377GN+f21f7szKXBTtOfwsAyGs3KGaxEnIxSs4kZvyN2/budAnu6HWZoO9DHY/Eyfcsdq7a\nKKusQMo/p+POD9aBUSjxUb8H8H6nQUhN1yGHp0l/4Va/Nc8/eOEILO5yv695uKQIg1sPEFylT6SL\nkjOJGX/jtp/uOgG7wy2o+1BfPCM7XomTr1nsNe3t2LoJth842+B4qG1M2rYV+ifHQ3H2DDztO8K6\nfDV6tLsGV/M8HLLp2ObaahcIXv1e/Hx/aLkXiTdKziQm+J7wFIpAM7LjkTjjPb7vr72XZujgdHtR\nWhF6G2XWSqTMmoHk994Bq1Si6qnpsE8sAJKSoAZ43YHN5XXjkLnI7zF/1a+bafz5ddFyLxJvlJxJ\nTPA94SkUwWZkxytxxmtLUX8z5l5kAAAgAElEQVTtLa104bYbLkdWh+YhtTFpxzboJz8BxZnT8F7b\nHpXLV4Pp0DHWoYfM4qyAxeW/a9pf9Vvhsjb6/LpouReJN+EO/BFRi9e2nY1tFxnKvwtlC8uaxMl3\nlR+tQO398ZfzQROzzGaFbsokpN99J+Tn/kJVwdOwfL1DUIkZAAyaNBjU6X6P+at+09T6Rp8PAEa1\nATe1ulGQy72ItEVcOc+dOxcHDx6ETCbD9OnT0bHj//5Id+/ejUWLFkGhUCArKwvjxo3jJFgiHrEe\nt412kxAxVPZcCtTeknJHwPYm7dxRXS2fOgnvNZmwLl8Fb8frOI2Pq3XFaqUKHU2ZfseQ/VW/KkXj\nz+/R/Hrcc9VdVDETXkSUnPfu3Ys///wT69evx/HjxzF9+nSsX7++9vgLL7yAtWvXolmzZhgxYgT6\n9++PNm2Ev1Uj4Za/cdvenVrijl6XRf3a0W4SwvdSpngL1N6m6cn+22uzQff8s0h+ey1YhQJVT06F\n/cmnARV3ySoW64prqtxQNzsJ9Hxa20z4ElFyLiwsRE5ODgCgdevWqKiogM1mg06nw6lTp5CWloYW\nLVoAAPr27YvCwkJKzgnI34SnVi3To94hjIvJZvFeyhTvm1tcTKmQQatJ8puce7Zv0SCmpG93Qj9p\nHBQn/4T36mtgXbYK3uu6cB5XuDOrQxHuZidi2ByFJJ6IknNJSQkyMzNrHxuNRpjNZuh0OpjNZhiN\nxnrHTp06FX2kRLRCmfAUTvLiqks6HjOy+bq5xcXWbzvWYKtOALg0Q4eH7shEWVlV9Q+qqqB7YRaS\n174OVi6HfWIBqqY8A6i570kINFOai3XF4W52Eq/NUQgJBSeztVmWjfo1DAYtlEpuKwqTSTpLH6Ta\nFobx4c3PirDnyF8wlztgSk9Gz/Yt8NAdmVAo/CcvfVoyTIZkXLA4Ghxrmp6M1pc3gUYV2q/2xOHX\nw+n2wlLpgiFVHfK/89cWf9b832G/3e/aZBUeubNDWOeKlNPtxaHjpX6PuTwMPIyvuh3ffAM89BBw\n4gRwzTWQvf02tN27I1Yj7+ds5kZnSluc5VDofDDpwv+9l+rfiphJpR1A/NoSUXLOyMhASUlJ7eML\nFy7AZDL5PXb+/HlkZGQEfU2LxR5JKI0ymfSiuMFCKKTclg+2FtdLXhcsjpA2KunYuonfLumOrZvA\nWuFAuO+WEgj73wW7Li4Pg+8OnvF77LuDZ3Fr90s56+IO1PNwwWKH2c8XGaB6Mlj5X2VIfXEWtGtW\ng5XL4Rg/GVVTpwEaDRDD3zuGkcOgTkeZy9LgmEGTDsYmh9kR3vml/LciVlJpB8B9WwIl+oj61Xr3\n7o0tW7YAAIqKipCRkQGdTgcAaNWqFWw2G06fPg2v14vt27ejd+/ekZyGSFyoy5n8yc9ug5yurdAk\nVQO5DGiSqkFO11aCukd0KN3v0WJ8PnywtRgz1+zBtNf2YOaaPfhgazEYn6/2OYGWtfUoO4aM7Bug\nXbMa3rbtUL75P6h69rnqxBxjNTOl/aF1xSTRRVQ5d+nSBZmZmbjnnnsgk8kwa9YsbNq0CXq9Hrm5\nuZg9ezYKCgoAALfddhuuuOIKToMm0hDN2LEY7p4Vjxnhocxa9zf5Te1x4f7v3sOgA59DBsA+biKq\nnpoOJCdHHVM4wp1ZTUiiiHjMecqUKfUeX3311bX/3a1bt3pLqwjxh4vkFa/dtSIRaIY0FzPCw5m1\nXnfyW7Nff8Lkr5ejedkZeFu3gXLdu6hq0z6qWCJFM6UJ8Y92CCO8qano/InHnZliLdAMaS6638Pp\nNlfI5bi396VYfvYzvLx+GppZzsI+djws274DevWKOpZo1cyUpsRMSDXaW5vwKtzlTHyvFw5VoKrW\n7vTCy7BoZDJ6yMLpeVD+8D30E8ZCefwYvFdcCeuy1fD26BldAISQmKHkTHgV6tixUNYLhyoe24OG\ntJGK04mUeS8iedVygGVhf+xxVE37J6AV5lAAIaQaJWciCMHGjqPdrjPe4rU9aKCeB+W+H6qr5aPF\nYC6/AtZlq+DpeQMn5yWExBYlZyJ4Yrg39MXitT2o354HxoOUF59D8sqlkPl8sD/8GKpmzAZSUjg5\nJyEk9ig5E8EL1EVcWulEWaUTLZoIL/HEY3vQGjU9D8oD+6qr5d9+BfOPy2Fd+io8N9zI+fnEgqu7\nXRESb5ScieAF6iIGgK37TuP+W66Kc1TBxXUttssF7cJ50C5fDBnDwPHQI7DNfA74e3OgRFNzt6uD\n5iO1d7vqZGpPd5oioiG8mTSEXESdpEDH1o3fkODQsdKAu4nxraaqjVViVh48AMMtfZGyZAF8l7RC\n+abPYXt5YcImZgD46Ohn2HH629q9uy2ucuw4/S0+OvoZz5EREhpKzkQUcrpe2ugxrrbCFB23G9qX\n5yB9QDaUv/wMx4OjYdmxG54bs/iOjFduxo095/b5Pbbn3D64GXecIyIkfNStTUTBmKpBkzjMfhYL\n5aGfoB8/FspfisC0uhTWJSvhybqJ77AEocRRChfj/8uai3GhxFGKlroWcY6KkPBQ5UxEQeq7iYXM\n7YZ23ot/V8tFcNw/CpZvCikx18GysqiOEyIEVDkT0Yjn7GchUhw5jNTxY6AsOgzmklawLloOT7+b\n+Q6rAb5nSJu0Rqjlarh8DatnjUINk9YYs3Pz3XYiHZSciWiI4U5UMeHxQLt0IbSL5kPm9cIxYiSq\nZr8ANjWN78jqqZkhfchcVDtDuqMpM+4zpFUKFXq06IqdZ75rcKx7864xSZpCaTuRDkrORHSEfCcq\nrimKjkA/YSySDh8E0/KS6mo5O4fvsPzadGwzdpz+tvZxmctS+ziv3aC4xjKs7e2Qy2Q4ZD6CMlc5\njOp0dPx7KVUsCKntRBooORMiRB4PtMsXQ7twHmQeDxz33o+q5+cKrlqu4WbcOGQu8nvscEkRBrce\nEHLFykXXcDxvRcll2wmpQcmZEIFR/PJzdbV88ACY5i1gW7QM7pz+fIcVUIXLWrum+GJlznJUuKww\naRtfqw7Epmu45laUscRF2wm5GM3WJkQovF4kL10IQ24Wkg4egDP/Xlh27hF8YgaANLUeBnW632NG\nTTrS1Pqgr1HTNVzmsoAFW9s1vOnYZq7D5VSaWo90tf8ejVDbfjE348Y5m5nWZCcwqpwJEQDFb79C\nP2EMkg7sB9OsOWwLl8J9y618hxUyhUyB5KRkwGVpcKxD08yg3brx7BrmckY142PwyfGvYPc4/B6/\nuO3Bzk0Ty0gNSs6E8MnrRfKry5Ey/0XI3G448+6B7cV5YNMNfEcWlk3HNuOM7WyDn1+iaxnSJKx4\ndA3HIvFdPBGshlqhRq8W3WrbHuq5aWIZqUHd2oTwRFH8G9Jvz4XuhVnwpRtQ8e6/YF35uugSc6Cq\n1+l1gGGD73vORbd4MFx3mwdqd4oyGYNbD6hNvKGcO1jvAXVxJxZKzoTEG8MgecVSGG6+EUn798E5\nJK96bHnAbXxH1ig344bZXuo3QYRS9QajUqjQ0ZTp91go3eLBxCLxBWq3xVVR2+5Qz83F+0ikg7q1\nCYkjxbGj1TOxf9wLX1MTKl9bCvdtt/MdVqNC6Y5NU+uRrkqDxd0wsYRT9d5+ZS4cXgeOWk7A4iqH\nUZOODk0zcfuVuTDbS6MaI45Ft3lNtV/mZ5y9brtDPXeor0cSAyVnQuKBYZD82qtIeXkOZE4nnHcN\nhW3uArBNhL3EJtgYaO2EKCa0CVH+XPwFIF2Vhu7Nu2BI64H48s9tmPv9kqjHiGOR+GqqfX9jznXb\nHeq5Q309khgoORMSY4rjR6Gf8DiSfvgevqZNUblyDdx3DOY7rKBCmUH9yfGv/CYTlVyFHs2vD2ky\n2MVfACzucnx/bh9O2/6qN8ksmslRsUp8Ne07XFKEMuf/qv267Q7n3HVfz+Ish8HP65HEQMmZkFjx\n+ZC8ZhVSXnyuuloePAS2lxaAbdqU78hCEqw7tsRR2mjydvvcOFLyCxRyRcBKN9AXgL9s5/z+3N/S\nqpolSqnexm8dGkoiDVeoO5GFeu66r6fQ+cDY5FQxJ6iIkrPH48EzzzyDs2fPQqFQ4KWXXsKll15a\n7zmZmZno0qVL7eO3334bCgWt0yOJQX7iOPSTxkG1Zzd8TZqgcsVrcA+6i++wwhKsO5ZlZY0mb6C6\nAg5W6Qb6AuCDz+/P647TXtwl3lRrRKbxGr9fCGK5pWewncjCPbdKoYJJp4fZQZPAElVEs7U///xz\npKam4sMPP8SYMWOwcOHCBs/R6XRYt25d7f8pMZOE8He1bOx3A1R7dsN1+2CU7dwrusQMBJ9BbdIa\nG13+VFeg2dCBllDJG/l4qjtOe/ESJbO91O/yqLqzzWsSKR8VKZ/nJuISUXIuLCxEbm4uAOCGG27A\n/v37OQ2KEDGS//E70u4aCN2Mp8EmJ6Py9bdQufZdsCYT36FF7PYrc9Gj+fUwqg2QQYYmGgNuanUj\nhrQZGDB51xVoGVCg12iha+735zXjtKEsUWJ8DDYUf4o5exbiuT3zMWfPQmwo/hSML/jaa0L4FFG3\ndklJCYzG6huWy+VyyGQyuN1uqFR1xoDcbhQUFODMmTPo378/Ro0axU3EhAiNzwfNW29AN+efkNnt\ncN12B6zzF4PNyOA7sog1NoM6r+2g6m06/1YzZnrIXOS3+xsIPhu6sfHYwVcOwKZjm3G4pAjl7ko0\n0RjqjdOGskRpx+nvaMctIkpBk/OGDRuwYcOGej87ePBgvccsyzb4d0899RQGDRoEmUyGESNGoGvX\nrujQoUOj5zEYtFAque36Npmksy6Q2iJMJlsJ8NBDwI4dgMEArFkD9fDhUMtkfIcWlouvydsH/u13\nBnWT1FQ82Pnues99vNl9cHndeGPfh/jmjz0NXrvHZdfhkuaBl4zVvIbFWQGDJg1KuQLrDn6EX8uL\nUeG2wpicjusv6YhRnfNqx5JTvWo01Rphtpc2bI/WiFbNmqLo0C9+z/f9uR/xYLch0KqS/R4XirrX\npe77o1aKq1tcUn/zcWpL0OScl5eHvLy8ej975plnYDabcfXVV8Pj8YBl2XpVMwAMHz689r979uyJ\n4uLigMnZYrGHG3tAJpMeZrM0JlNQWwTI54Np0wdgp0yFzF4F14CBsL6yBGyzZkCJje/ownLxNXEz\nbuz58ye/z/3+5E/IbXGz3zHToZcPhsyrbFABD2h5S8jXXAENKh0ubCj+tH7F6yjH18e+gdvJ1Kt4\nM43XYIe94RKlqw3tcPp8CUrsZX7P4/A6sarwfTxwbX5IcfGh5rqI/WYYkvmbB/dtCZToI+rW7t27\nN7766iv06dMH27dvR48ePeodP3HiBFauXIkFCxaAYRjs378fAwYMiORUhAiO/NRJ6Cc9AezaATY9\nHdZXXodrWD4gsmq5MZHupsXVbGib24YDFw75PXbxMqqLu9XlkMMHHw6bqyvmtKRUlHsq/L7WUcuJ\n2gliwXB5J6tw0c0wElNEyfm2227D7t27MXz4cKhUKrz88ssAgNdffx3dunVD586d0bx5cwwbNgxy\nuRzZ2dno2LEjp4ETEncsC827byFl9kzIq2zA7bfDMnchfM1b8B0Zp6LdTSvYsqLG1FSIB8yHUOGu\n9Puci78c1HwhYHwMdp0trF1+ZXGXY+eZQpiSmwIe/+ezuIJv28l31RrurTT5/BJBuBVRcq5Z23yx\nRx99tPa/p06dGnlUhPDA5WFQYXMhTaeGOqn+B6/89CnoJz8B1Tfb4UtNQ+Xy1Ugd9yh8IuvCDgVf\n20g2dvvFuvx9OXAzbhSV/ur3+SWO0tpqOpTXChZTvKvWUHsx+P4SQbhHO4SRhMf4fFi/7RgOFJtR\nVumCMVWNzu1MyM9uA4VMBs377yLln9Mht1nhyrkFtoXL4GvRUnTd2OFUVbHYTStYbI1ViHX5+3IQ\nKIGxf/8v1NcKNSZ/VWsshNKL4Wbc+NdvH+P7c/tqj1HXt/hRciYJb/22Y9j64+nax6WVLmz98TR0\npedw/6bFUG3/L3z6VFQuWwVX/r2iS8qRVFWx3E3Ln0AJFgDSVam4LqOj3y8HgRJYDY1CDa1SW+9u\nV8G+aMTiTlbhCtSL0b7JNfjk+Fc4aD7SaJzx+hJBuEfJmSQ0l4fBgWJz/R+yLHKK/ovhK9+EymWH\nOzsH1kXL4Wt5CT9BRimartlIx4/DFSjBpqtTMa3bJOhUOr//NlACq+Fi3HiyyzioFEkhf9EQyi0c\nh7QZCJb1Yc+5fXAxLgCAWq7G0fLfcbbqr4D/Nl5fIgj3ItohjBCpqLC5UFbpqn1stJZi1sdzMPHr\nFQDL4swLi1Dx4UeiTcyh7KIlBIF2CrvO1LHRxFxjSJuB6NOyV8AtP01aY1hbZwbbvjRe1ahCroBM\nJq9NzADg8rmCJmaA7gMtZlQ5k4SWplPDmKpGaYUT2T9vxyM73oDOZceBf3TCursK8OSoO0TXjV1X\nKF2zl0AYVVU049wKuQL3XH0XkrUqfH3smwbHI02m8R579yfU8Xh/6D7Q4kXJmSQ0dZICN5qATu+8\niG6//wh7kgYrcsZiS4dbkNPt0gaztsVGKF2zoeBinHtU5zy4nQxnyVQhV2Bw6wHo3bIbWFYGk9YY\n92QXbDzeH6M6HR1N7ek+0CJGyZkkLpaFesO/8NCMpyCvqEDRFddhcc7j8F5yGXLaNUV+dhu+I4wa\nX8uiolF3nDvcdbtcTWRzM26UOSvwzelvcaTkV16XJ4Uy4a2uHs2vxz1X3SXIa0tCR8mZJCT5+XPQ\nTZkI9ZYvwWpTYJ2/GGn3jsTkKrffdc5iJoSu2XBFu243lIls/hJ/3fNenAz5Wp4U6AvWJbqWcHod\nDa4rrW0WP0rOJLGwLNQf/Ru66VMhLy+H+8YsWBevgO8fl0MNIEMlvT+JeC+L4kIsN/8IlPhD2QiF\nj+VJgb5gMSwjmutKQie9TyJCGiG7cAH6qZOg/vLz6mr55YVwPjgakCfGooV4LYuKVqw3/2gs8ftY\nBkdK/O80Vhcfy5MCfcFSQCGK60rCQ8mZSB/LQv3xRuimTYHcYoH7hhthXbISvsuv4Dsy4kcsN/8I\nlPgPlRSh3OV/T++6+JxIJ5YvWCR6iVEykIQlM5uR+tD9SB0zGjKXC9aXXkHFps8pMQtYzQQof6JN\njIESf4XLijRVatDXEOpEOiItlJyJZKk/2QRjVneoN38Kd88bULZ9N5yjH0uYbmyxiuXmH8ESf8em\n/s8LAE00BtzU6kZBT6Qj0kHd2kRyZCUl0D1TAM2nH4NNTobthZfheHgMJWURidUM82BLy2pmOtc9\n77XGq3HTpb1h1KRTxUzihpIzkRTVZ59A//RkyEtK4OneE9Zlr4K5UvzrlRNNLGeYB0r8YpzZTqSJ\nkjORBFlpKXTTCqD5v01gNRrYnp8LxyNjAQWt9xSzWEyACiUBBztvuJujEBIuSs5E9FSbP4N+6iTI\nS8zwdO0O67JVYNq05TssInCRJP5oN0chJFSUnIloycpKoZs+FZpNG8Gq1bDNegGOMeOoWhY4MVed\nsdwchZC6KDkTUVJ9uRn6KRMhN1+A5/qusC5bDaZtO77DIgGIveqM9eYohNRF01eJqMgsZdA//gjS\nRg6HrLICtmefR/nn/6HELAI1VWeZywIWbG3VuenYZr5DC0kom6MQwhVKzkQ0VFu+hKFPD2g2roen\ncxdYtu6CY/wk6sYWgWBVp5txxzmi8MVyc5RouBk3zPZSUbyHJHTUrU0ET1ZugW7mM9D8+0OwKhVs\nM2fD8fgEQEm/vvEUzVhxLLfkjBeh3X5T7MMEJDD6dCOCptq6BbonJ0Bx7i94OnWunol9zbV8h5VQ\nuEgCge5JzGfVGS4h3X6TJqdJGyVnIkiyinKk/HM6kj98D2xSEqqm/xP2JyZRtcwDLpKA0KrOSAll\nkxKanCZ9NOZMBCdp239gyOqJ5A/fg6fjdbD8Zyfsk6ZQYuYBl2PFQ9oMxE2tbkQTjQEyyES9V3XN\nGmm+EiBNTpO+iD/t9u7di4kTJ2Lu3Lno169fg+Offvop3nnnHcjlctx9993Iy8uLKlAifbLKCqTM\nmoHk998Fq1Si6ukZsE94EkhK4ju0hMXlWLFQqk4pkMowAWlcRMn55MmTeOutt9ClSxe/x+12O1au\nXImNGzciKSkJw4YNQ25uLtLT/c90JCRp+3+hn/wEFGfPwNO+Y/XYcvsOfIeV8GKRBOiexNGTyjAB\naVxE3domkwkrVqyAXu//D/PgwYPo0KED9Ho9NBoNunTpgv3790cVKJEmmbUSuoIJSM+/C/IL51E1\n5RmUf7WNErNAxPL2jSQ6UhomIA1FVDknJycHPF5SUgKj0Vj72Gg0wmw2R3IqImFJ32yvrpZPn4L3\n2vaoXL4aTIeOfIdFLiKkGcrkf2iYQNqCJucNGzZgw4YN9X42fvx49OnTJ+STsCwb9DkGgxZKJbdr\n80wm6Yy7SKotGgBTpwKvvVa9gcizz0I5cyaMKvF9sEjlugRrx+PN7oPL64bFWQGDJg1qpXCvlVSu\nCRB6Wy6BsIcJEvGaRCtocs7Lywt7MldGRgZKSkpqH1+4cAHXXXddwH9jsdjDOkcwJpMeZrM0ZixK\nqi2HfwDz4CgoTp2E95prYV22Ct5OnYEKFwAX3+GFRSrXJZx2KKBBpUO410oq1wSQTluk0g6A+7YE\nSvQxWUrVqVMnHD58GJWVlaiqqsL+/fvRtWvXWJyKiIXNBt3TTwI33wz52TOomjwFlq+/qU7MhBBC\n6olozHnHjh1Yu3YtTpw4gaKiIqxbtw5vvvkmXn/9dXTr1g2dO3dGQUEBRo8eDZlMhnHjxjU6eYxI\nX9J3u6CfOA6Kk38A116L8iWvwnud/5n+hBBCABkbyoBwHHDd7UFdKQJQVQXdC7OQvPZ1sHI5HOMn\nQzvvRZgrpbFBv2ivy0Wk0g6A2iJEUmkHEN9ubdpyicREUuF30E8YC8Wff8Dbth2sy1fD26UrtGo1\nAGkkZyI90dzcgxAuUXIm3LLbkTL3OSSvWQ3IZLA/MQlVT00HNBq+IyOkUXSHJyI0lJwJZ5R7CqGf\nOBbK30/A26Zt9Uzsrt35DouQoOgOT0Ro6MYXJHp2O1KenYb0wQOg+ON32B+fAMt/v6XETESBy5t7\nEMIVqpxJVJR7v4d+whgoTxyH98rWsC5bDW/3HnyHRUjIuLy5ByFcocqZRMbhQMrsmUi/4xYofj8B\n+2PjYNn2HSVmIjo1N/fwh+7wRPhClTMJm/LHvdBPGAvlsaPwXnElrEtXwduzF99hERIRusMTESJK\nziR0TidS5s9F8qvLAJaF/dGxqJo+C9Bq+Y6MkICCLZGim3sQoaHkTEKi3P9jdbVc/BuYf1wO67JV\n8PTqzXdYJESJun431CVSdIcnIjSUnElgLhdSXnkJySuWQObzwf7wY6iaMRtISeE7MhKCRF+/G+4S\nKZVCRZO/iCDQhDDSKOVP+2HIzYJ22SL4Wl2G8o83o2ruK5SYRaQmOZW5LGDB1ianTcc28x1azMVq\niZSbccNsL6UlViSmqHImDblc0C6aB+2yxZAxDBwPPQLbzOcAnY7vyEgYgiWnwa0HSLrrluslUone\nC0Hii5IzqUd56Cfox4+B8pefwVx6GaxLVsLTpy/fYZEIJPr63ZolUmUuS4NjkSyRkvouYok6L0Go\nKDmTam43tIvmQ7t0YXW1PHI0qmY9D1ZHazzFiuvkJDZcLpGSci8E9QgIEyVnAsXhQ0gdPwbKn4+A\naXUprItXwNO3H99hkSjR+l3ulkhJuRdC6j0CYkXJOZF5PNAuWQDt4lcg83rhuH8UqmbPAatP5Tsy\nwpFEX7/L1RIpqfZCSLlHQOwoOScoxZHD0E8Yi6Qjh8Bc0grWRcvh6Xcz32ERjtH63WrRLpGSai+E\nlHsExI6Sc6LxeKBdtgjahfOqq+X7HkDVcy+CTU3jOzISQ7R+N3pS7IWQao+AFFByTiCKn4uqq+VD\nP4Fp0RK2RcvgvvkWvsMiRBSk2Ash1R4BKaDknAi8XmiXL4Z2wcuQeTxwDB+Bqufngk3zfyceQkjj\npNYLIcUeASmg5Cxxil9/gX7CGCT9dABM8xbV1XJOf77DIoQIhBR7BKSAtu+UKq8XyUsXwpDTB0k/\nHYDz7uGw7NxDiZkQ4ldNjwAlZmGgylmCFL/9Wl0tH9gPJqMZbAuXwd3/Vr7DIoQQEiKqnKWEYZC8\nfEl1tXxgP5zD8mHZ9T0lZkIIERmqnCVCcbS4eib2vh/gM2WgcsFSuG+lCR2EECJGEVfOe/fuRa9e\nvbB9+3a/xzMzM3H//ffX/p9hmIiDJAEwDJJXLoMhuzeS9v0A55A8lO36nhIzIYSIWESV88mTJ/HW\nW2+hS5cujT5Hp9Nh3bp1EQdGglMcPwr9+LFI+nEvfE1NqFy9BO6Bd/AdFiEB0d2PCAkuouRsMpmw\nYsUKzJgxg+t4SCgYBslrViFl7vOQOZ1w3jkEtpcWgm0inbWXRHro7keEhC6i5JycnBz0OW63GwUF\nBThz5gz69++PUaNGBXy+waCFUsntH6jJJJ2t52rbcvQoMGoU8N13gMkErFsHzbBh0PAbXlgkeV1E\nLh7tePvAv/3e/UirTcKDne/m7DxSuSaAdNoilXYA8WtL0OS8YcMGbNiwod7Pxo8fjz59+gT8d089\n9RQGDRoEmUyGESNGoGvXrujQoUOjz7dY7CGGHBqTSQ+z2crpa/LFZNLDfL4CyW+sRsqLz0HmcMA5\n6C7YXl4ItmlTQETtlNx1kUBb4tEON+PGnj9/8nvs+5M/IbfFzZx0cUvlmgDSaYtU2gFw35ZAiT5o\ncs7Ly0NeXl7YJx0+fHjtf/fs2RPFxcUBkzMJ4PhxpN0/EqrC7+AzGmFdtgquwUP4joqQkNHdjwgJ\nT0zWOZ84cQIFBQVgWRZerxf79+9H27ZtY3EqafP5oHljNdCxI1SF38E1cBDKdu6lxExEp+buR/7Q\n3Y8IaSiiMecdO3Zg7bwuihAAAA2tSURBVNq1OHHiBIqKirBu3Tq8+eabeP3119GtWzd07twZzZs3\nx7BhwyCXy5GdnY2OHTtyHbukyf/4HfpJ46Da/S1gNKJy8Qq47hwKyGR8h0ZI2OjuR4SER8ayLMt3\nEAA4H5MQ7TiHzwfN22uhe/6fkNmr4Lr1dqjfXAOzIoXvyDgh2uvih1TaEq921MzW9nf3I65ma0vl\nmgDSaYtU2gEIbMyZxI/85J/V1fK3O+FLT4d14RtwDcmDKSNVVJO+CPGH7n5ESOgoOQsBy0LzzptI\nee5ZyKtscPW/FbYFS+Fr1pzvyAjhnNTuh0xILFBy5pn81EnoJ4+Haud2+NLSUbniNbjy7qGxZUII\nSWCUnPnCstC89w5SZs2A3GaF65YB1dVy8xZ8R0YIIYRnlJx5ID99Cvonx0O1Yxt8qWmoXLYKrvx7\nqVomhBACgJJzfLEsNB+sQ8qz06qr5ZtzYVu0HL4WLfmOjBBCiIBQco4T+dkz1dXytq3w6VNhXbIS\nzuEjqFomhBDSACXnWGNZqP/1PnTPToO8sgLufjfDumg5fJe04jsyQgghAkXJOYbkf52FrmAC1Fu/\nhk+nh3XRcjjve4CqZUIIIQFRco4FloV6/QfV1XJFOdxZ/WBdsgK+VpfyHRkhhBARoOTMMfm5v6Cb\nMhHqr7+CL0UH64KlcN7/IFXLhPDMzbhpZzIiGpScucKyUG9cD92MpyAvL4e7z02wLl4O32X/4Dsy\nQhJazZ7eh8xFsLjKYVCno6OJ2z29CeEaJWcOyM6fh37qJKi/2gxWmwLr/MVwjnyIqmVCBGDTsc31\n7oZV5rLUPs5rN4ivsAgJKCb3c04YLAv1R/+GMas71F9thvvGLJR9Uwjng6MpMRMiAG7GjUPmIr/H\nDpcUwc244xwRIaGh5Bwh2YULSB01AqljH4bM5YL1pQWo2PgpfP+4nO/QCCF/q3BZYXGV+z1W5ixH\nhYvu9kaEibq1w8WyUH+yCbpnCiAvK4O7V29Yl6yE74or+Y6MEHKRNLUeBnU6ylyWBseMmnSkqRu/\nny4hfKLKOQwysxmpox9A6qOjIHM4YJ07HxUfb6bETIhAqRQqdDRl+j3WoWkmzdomgkWVc4hUn34M\n/dNPQl5aCk+PXqhc+ip8V7bmOyxCSBBD2gwEUD3GXOYsh1GTjg5NM2t/TogQUXIOQlZSAt20KdB8\nsglscjJsc16C45GxgJw6HQgRA4Vcgbx2gzC49QBa50xEg5JzAKrPPoH+6cmQl5TA060HrMteBdO6\nLd9hEUIioFKoYNI24TsMQkJCydkPWVlpdbX88UdgNRrYnpsLx6NjAQVtWEAIIST2KDlfRPXF59BP\nnQS5+QI813eDdflqMG2oWiaEEBI/lJz/JisrhW76U9Bs2gBWrYZt1gtwjBlH1TIhhJC4o+QMQPXV\nF9BNmQjFhfPwdLke1mWrwbS7iu+wCCGEJKiETs6ycgt0M56GZsO/wKpUsM18Do7HxwPKhH5bCCGE\n8CyiLOT1ejFjxgycPHkSDMPgqaeeQteuXes959NPP8U777wDuVyOu+++G3l5eZwEzBXV119CVzAR\nivPn4OncpbpavupqvsMihBBCIkvOn3zyCZKTk/Hhhx/i6NGjmDZtGjZu3Fh73G63Y+XKldi4cSOS\nkpIwbNgw5ObmIj09nbPAIyWrKIdu5jPQrP8AbFISbDNmwTFuIlXLhBBCBCOijDRo0CDcfvvtAACj\n0Yjy8vobyx88eBAdOnSAXl+9b22XLl2wf/9+ZGdnRxludFT//Rq6JydA8ddZeDp1hnXZKjDXXMtr\nTIQQQsjFIkrOSUlJtf/9zjvv1CbqGiUlJTAajbWPjUYjzGZzwNc0GLRQKrmdGW0y/b2pfUUFMHky\n8NZbQFISMGcOkp5+GsY67RC62rZIALVFeKTSDoDaIkRSaQcQv7YETc4bNmzAhg0b6v1s/Pjx6NOn\nD95//30UFRVh9erVAV+DZdmggVgs9qDPCYfJpIfZbEXStq3QPzkeirNn4OnQqbpazmwPlDsBODk9\nZ6zUtEUKqC3CI5V2ANQWIZJKOwDu2xIo0QdNznl5eX4nc23YsAHbtm3Dq6++Wq+SBoCMjAyUlJTU\nPr5w4QKuu+66cGKOXmUldE9OQPJ774BVKlH11HTYJxZUV86EEEKIgEV094ZTp07hX//6F1asWAG1\nWt3geKdOnXD48GFUVlaiqqoK+/fvbzCbO5YUxb8B7dsj+b134M3sAMuWHbBPeYYSMyGEEFGIaMx5\nw4YNKC8vx6OPPlr7s7Vr1+Ltt99Gt27d0LlzZxQUFGD06NGQyWQYN25c7eSweFAWHQbOn0fVlGdg\nnzQFUNEdaAghhIiHjA1lQDgOuB6TMKVrYC4Xx5hyMDRmI0xSaYtU2gFQW4RIKu0A4jvmLN2bElMX\nNiGEEJGSbnImhBBCRIqSMyGEECIwlJwJIYQQgaHkTAghhAgMJWdCCCFEYCg5E0IIIQJDyZkQQggR\nGErOhBBCiMBQciaEEEIEhpIzIYQQIjCUnAkhhBCBEcyNLwghhBBSjSpnQgghRGAoORNCCCECQ8mZ\nEEIIERhKzoQQQojAUHImhBBCBIaSMyGEECIwkknOXq8XTz/9NIYPH467774bP/74Y4PnfPrppxg6\ndCjy8vKwYcMGHqIM3d69e9GrVy9s377d7/HMzEzcf//9tf9nGCbOEYYmWDvEck08Hg8KCgowfPhw\njBgxAqdOnWrwHDFck7lz5yI/Px/33HMPDh06VO/Y7t27MWzYMOTn52PlypU8RRiaQO3Izs7Gvffe\nW3sdzp8/z1OUoSkuLkZOTg7ee++9BsfEdE2AwG0R23WZP38+8vPzMXToUHz99df1jsXlurASsXHj\nRnbWrFksy7JscXExO3To0HrHq6qq2FtuuYWtrKxkHQ4HO3DgQNZisfAQaXB//vknO2bMGPbxxx9n\nt23b5vc53bt3j3NU4QvWDjFdk02bNrGzZ89mWZZld+3axU6cOLHBc4R+Tb7//nv20UcfZVmWZY8d\nO8befffd9Y7feuut7NmzZ1mGYdjhw4ezR48e5SPMoIK1o1+/fqzNZuMjtLBVVVWxI0aMYGfOnMmu\nW7euwXGxXBOWDd4WMV2XwsJC9uGHH2ZZlmXLysrYvn371jsej+simcp50KBBmDZtGgDAaDSivLy8\n3vGDBw+iQ4cO0Ov10Gg06NKlC/bv389HqEGZTCasWLECer2e71CiEqwdYromhYWFyM3NBQDccMMN\ngo0zkMLCQuTk5AAAWrdujYqKCthsNgDAqVOnkJaWhhYtWkAul6Nv374oLCzkM9xGBWqH2KhUKqxZ\nswYZGRkNjonpmgCB2yI23bp1w9KlSwEAqampcDgctT1h8boukknOSUlJUKvVAIB33nkHt99+e73j\nJSUlMBqNtY+NRiPMZnNcYwxVcnIyFApFwOe43W4UFBTgnnvuwVtvvRWnyMITrB1iuiZ1Y5XL5ZDJ\nZHC73fWeI/RrUlJSAoPBUPu47vttNptFdS0aa0eNWbNmYfjw4ViwYAFYAW+CqFQqodFo/B4T0zUB\nArelhliui0KhgFarBQBs3LgRWVlZtZ9l8bouSs5fMQ42bNjQYHxy/Pjx6NOnD95//30UFRX9f3v3\nD5JMHMdx/H1RthRFoFG4NEQRRAWGwVGDUDRJi0PQ5hRBSxANRWt/pKUIi05qK2poCRQig5bAEKI/\ng4ME1dCfKWvK8JmeI5/HtKd4ujv5vqa7+4l+v/cRvvC74QgGg3m/wyx/jHy95DM+Po7X60VRFIaG\nhnC5XLS2tv7PUvP6ah/vmTmT09PTrPNctZotk0LMcr+/688+RkdH6e7upqqqipGRESKRCP39/QZV\nJ36zYi77+/vs7OwQCoV+/LctOZx9Ph8+n++v69vb2xwcHLC8vExZWVnWmsPh4PHxUT+/v7+nvb39\nv9dayEe9FDI4OKgfd3V1kUgkDB0EX+nDSplMTEzw8PBAc3Mzr6+vZDIZbDZb1mfMlsmfct1vu92e\nc+3u7s6025P5+gAYGBjQj3t6ekgkEqYfArlYKZPPsFouR0dHBINB1tbWsh7N/VQuRbOtfX19zebm\nJktLS/r29nttbW2cnZ3x9PTEy8sL8Xgcl8tlQKXfl0wmGRsbI5PJkE6nicfjNDY2Gl3WP7NSJqqq\nEg6HAYhGo7jd7qx1K2SiqiqRSASAi4sLHA4HFRUVADidTp6fn7m5uSGdThONRlFV1chyP5Svj1Qq\nhd/v1x85xGIx0+XwWVbKpBCr5ZJKpZibm2NlZYXq6uqstZ/KpWjeSrWwsMDe3h719fX6NU3TWF9f\np7Ozk46ODsLhMJqm6duOXq/XwIo/dnh4iKZpJJNJampqsNvthEIhVldX9V7m5+c5Pj6mpKQEj8fD\n8PCw0WX/5TN9WCWTt7c3Jicnubq6wmazMTMzQ11dneUyCQQCnJycoCgK09PTXF5eUllZSW9vL7FY\njEAgAEBfXx9+v9/gaj+Wr4+NjQ12d3cpLy+npaWFqakpFEUxuuSczs/PmZ2d5fb2ltLSUmpra/F4\nPDidTstlUqgXK+WytbXF4uIiDQ0N+jW3201TU9OP5VI0w1kIIYQoFkWzrS2EEEIUCxnOQgghhMnI\ncBZCCCFMRoazEEIIYTIynIUQQgiTkeEshBBCmIwMZyGEEMJkZDgLIYQQJvMLmSirGBEqUbEAAAAA\nSUVORK5CYII=\n",
            "text/plain": [
              "<matplotlib.figure.Figure at 0x7fae9eb12dd8>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "DUXu7_tK6eR4",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        "criterion = nn.BCELoss()\n",
        "optimizer = torch.optim.SGD(model.parameters(), lr=0.01)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "metadata": {
        "id": "1XdkjaRQaol6",
        "colab_type": "code",
        "outputId": "c93b8b24-6ab6-4c48-838b-d9f9f580608f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 17017
        }
      },
      "cell_type": "code",
      "source": [
        "epochs = 1000\n",
        "losses = []\n",
        "\n",
        "for i in range(epochs):\n",
        "  y_pred = model.forward(x_data)\n",
        "  loss = criterion(y_pred, y_data)\n",
        "  print(\"epoch:\", i, \"loss:\", loss.item())\n",
        "  losses.append(loss.item())\n",
        "  optimizer.zero_grad()\n",
        "  loss.backward()\n",
        "  optimizer.step()"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "epoch: 0 loss: 0.6185115575790405\n",
            "epoch: 1 loss: 0.6174639463424683\n",
            "epoch: 2 loss: 0.6164201498031616\n",
            "epoch: 3 loss: 0.6153794527053833\n",
            "epoch: 4 loss: 0.614342451095581\n",
            "epoch: 5 loss: 0.6133086681365967\n",
            "epoch: 6 loss: 0.6122783422470093\n",
            "epoch: 7 loss: 0.6112515330314636\n",
            "epoch: 8 loss: 0.6102280616760254\n",
            "epoch: 9 loss: 0.6092080473899841\n",
            "epoch: 10 loss: 0.6081910729408264\n",
            "epoch: 11 loss: 0.6071775555610657\n",
            "epoch: 12 loss: 0.606167733669281\n",
            "epoch: 13 loss: 0.6051608324050903\n",
            "epoch: 14 loss: 0.604157567024231\n",
            "epoch: 15 loss: 0.6031574606895447\n",
            "epoch: 16 loss: 0.602160632610321\n",
            "epoch: 17 loss: 0.6011670827865601\n",
            "epoch: 18 loss: 0.6001767516136169\n",
            "epoch: 19 loss: 0.599189817905426\n",
            "epoch: 20 loss: 0.5982059836387634\n",
            "epoch: 21 loss: 0.5972254276275635\n",
            "epoch: 22 loss: 0.5962479114532471\n",
            "epoch: 23 loss: 0.5952739119529724\n",
            "epoch: 24 loss: 0.5943028926849365\n",
            "epoch: 25 loss: 0.5933352112770081\n",
            "epoch: 26 loss: 0.5923705101013184\n",
            "epoch: 27 loss: 0.5914090275764465\n",
            "epoch: 28 loss: 0.5904508829116821\n",
            "epoch: 29 loss: 0.5894957184791565\n",
            "epoch: 30 loss: 0.588543713092804\n",
            "epoch: 31 loss: 0.5875945687294006\n",
            "epoch: 32 loss: 0.5866488218307495\n",
            "epoch: 33 loss: 0.5857059955596924\n",
            "epoch: 34 loss: 0.5847664475440979\n",
            "epoch: 35 loss: 0.5838297009468079\n",
            "epoch: 36 loss: 0.5828962922096252\n",
            "epoch: 37 loss: 0.5819657444953918\n",
            "epoch: 38 loss: 0.581038236618042\n",
            "epoch: 39 loss: 0.5801137685775757\n",
            "epoch: 40 loss: 0.5791923403739929\n",
            "epoch: 41 loss: 0.5782737135887146\n",
            "epoch: 42 loss: 0.577358067035675\n",
            "epoch: 43 loss: 0.5764455199241638\n",
            "epoch: 44 loss: 0.5755358934402466\n",
            "epoch: 45 loss: 0.5746294260025024\n",
            "epoch: 46 loss: 0.5737255811691284\n",
            "epoch: 47 loss: 0.5728249549865723\n",
            "epoch: 48 loss: 0.5719269514083862\n",
            "epoch: 49 loss: 0.5710318088531494\n",
            "epoch: 50 loss: 0.5701398849487305\n",
            "epoch: 51 loss: 0.5692505240440369\n",
            "epoch: 52 loss: 0.5683643221855164\n",
            "epoch: 53 loss: 0.5674808621406555\n",
            "epoch: 54 loss: 0.5666001439094543\n",
            "epoch: 55 loss: 0.5657223463058472\n",
            "epoch: 56 loss: 0.5648473501205444\n",
            "epoch: 57 loss: 0.5639750957489014\n",
            "epoch: 58 loss: 0.5631057620048523\n",
            "epoch: 59 loss: 0.5622392892837524\n",
            "epoch: 60 loss: 0.561375617980957\n",
            "epoch: 61 loss: 0.5605144500732422\n",
            "epoch: 62 loss: 0.5596560835838318\n",
            "epoch: 63 loss: 0.5588006973266602\n",
            "epoch: 64 loss: 0.5579478144645691\n",
            "epoch: 65 loss: 0.5570977330207825\n",
            "epoch: 66 loss: 0.5562503933906555\n",
            "epoch: 67 loss: 0.5554057955741882\n",
            "epoch: 68 loss: 0.5545637011528015\n",
            "epoch: 69 loss: 0.5537243485450745\n",
            "epoch: 70 loss: 0.5528878569602966\n",
            "epoch: 71 loss: 0.5520538687705994\n",
            "epoch: 72 loss: 0.5512227416038513\n",
            "epoch: 73 loss: 0.5503939986228943\n",
            "epoch: 74 loss: 0.5495679378509521\n",
            "epoch: 75 loss: 0.5487444996833801\n",
            "epoch: 76 loss: 0.5479238629341125\n",
            "epoch: 77 loss: 0.5471054911613464\n",
            "epoch: 78 loss: 0.5462900400161743\n",
            "epoch: 79 loss: 0.5454771518707275\n",
            "epoch: 80 loss: 0.5446667671203613\n",
            "epoch: 81 loss: 0.5438589453697205\n",
            "epoch: 82 loss: 0.5430535674095154\n",
            "epoch: 83 loss: 0.5422506928443909\n",
            "epoch: 84 loss: 0.5414506196975708\n",
            "epoch: 85 loss: 0.5406527519226074\n",
            "epoch: 86 loss: 0.5398576855659485\n",
            "epoch: 87 loss: 0.5390648245811462\n",
            "epoch: 88 loss: 0.5382746458053589\n",
            "epoch: 89 loss: 0.5374867916107178\n",
            "epoch: 90 loss: 0.5367016792297363\n",
            "epoch: 91 loss: 0.535918653011322\n",
            "epoch: 92 loss: 0.5351383686065674\n",
            "epoch: 93 loss: 0.5343605279922485\n",
            "epoch: 94 loss: 0.5335849523544312\n",
            "epoch: 95 loss: 0.5328119993209839\n",
            "epoch: 96 loss: 0.5320413112640381\n",
            "epoch: 97 loss: 0.5312730669975281\n",
            "epoch: 98 loss: 0.5305072665214539\n",
            "epoch: 99 loss: 0.5297438502311707\n",
            "epoch: 100 loss: 0.5289824604988098\n",
            "epoch: 101 loss: 0.5282240509986877\n",
            "epoch: 102 loss: 0.5274677872657776\n",
            "epoch: 103 loss: 0.5267136693000793\n",
            "epoch: 104 loss: 0.5259618759155273\n",
            "epoch: 105 loss: 0.5252127647399902\n",
            "epoch: 106 loss: 0.524465799331665\n",
            "epoch: 107 loss: 0.5237209796905518\n",
            "epoch: 108 loss: 0.5229786038398743\n",
            "epoch: 109 loss: 0.5222384929656982\n",
            "epoch: 110 loss: 0.5215004682540894\n",
            "epoch: 111 loss: 0.5207651257514954\n",
            "epoch: 112 loss: 0.5200319290161133\n",
            "epoch: 113 loss: 0.5193008184432983\n",
            "epoch: 114 loss: 0.5185720324516296\n",
            "epoch: 115 loss: 0.5178455114364624\n",
            "epoch: 116 loss: 0.5171211361885071\n",
            "epoch: 117 loss: 0.5163991451263428\n",
            "epoch: 118 loss: 0.5156794190406799\n",
            "epoch: 119 loss: 0.5149617791175842\n",
            "epoch: 120 loss: 0.5142462253570557\n",
            "epoch: 121 loss: 0.5135331153869629\n",
            "epoch: 122 loss: 0.5128219723701477\n",
            "epoch: 123 loss: 0.5121132135391235\n",
            "epoch: 124 loss: 0.5114063024520874\n",
            "epoch: 125 loss: 0.5107016563415527\n",
            "epoch: 126 loss: 0.5099992752075195\n",
            "epoch: 127 loss: 0.5092989206314087\n",
            "epoch: 128 loss: 0.5086007714271545\n",
            "epoch: 129 loss: 0.5079045295715332\n",
            "epoch: 130 loss: 0.5072106122970581\n",
            "epoch: 131 loss: 0.5065188407897949\n",
            "epoch: 132 loss: 0.5058292150497437\n",
            "epoch: 133 loss: 0.5051414966583252\n",
            "epoch: 134 loss: 0.5044559240341187\n",
            "epoch: 135 loss: 0.5037723779678345\n",
            "epoch: 136 loss: 0.5030909180641174\n",
            "epoch: 137 loss: 0.5024116039276123\n",
            "epoch: 138 loss: 0.5017342567443848\n",
            "epoch: 139 loss: 0.50105881690979\n",
            "epoch: 140 loss: 0.5003856420516968\n",
            "epoch: 141 loss: 0.4997144341468811\n",
            "epoch: 142 loss: 0.4990452826023102\n",
            "epoch: 143 loss: 0.49837803840637207\n",
            "epoch: 144 loss: 0.4977127015590668\n",
            "epoch: 145 loss: 0.497049480676651\n",
            "epoch: 146 loss: 0.4963882863521576\n",
            "epoch: 147 loss: 0.49572890996932983\n",
            "epoch: 148 loss: 0.49507153034210205\n",
            "epoch: 149 loss: 0.49441614747047424\n",
            "epoch: 150 loss: 0.4937628209590912\n",
            "epoch: 151 loss: 0.49311134219169617\n",
            "epoch: 152 loss: 0.49246203899383545\n",
            "epoch: 153 loss: 0.49181443452835083\n",
            "epoch: 154 loss: 0.4911685883998871\n",
            "epoch: 155 loss: 0.49052485823631287\n",
            "epoch: 156 loss: 0.48988306522369385\n",
            "epoch: 157 loss: 0.48924314975738525\n",
            "epoch: 158 loss: 0.4886051118373871\n",
            "epoch: 159 loss: 0.48796898126602173\n",
            "epoch: 160 loss: 0.487334668636322\n",
            "epoch: 161 loss: 0.4867023527622223\n",
            "epoch: 162 loss: 0.4860716760158539\n",
            "epoch: 163 loss: 0.4854430854320526\n",
            "epoch: 164 loss: 0.4848161041736603\n",
            "epoch: 165 loss: 0.4841911196708679\n",
            "epoch: 166 loss: 0.4835679233074188\n",
            "epoch: 167 loss: 0.4829466640949249\n",
            "epoch: 168 loss: 0.4823271632194519\n",
            "epoch: 169 loss: 0.4817095100879669\n",
            "epoch: 170 loss: 0.48109352588653564\n",
            "epoch: 171 loss: 0.48047950863838196\n",
            "epoch: 172 loss: 0.47986698150634766\n",
            "epoch: 173 loss: 0.47925662994384766\n",
            "epoch: 174 loss: 0.47864776849746704\n",
            "epoch: 175 loss: 0.478040874004364\n",
            "epoch: 176 loss: 0.4774356782436371\n",
            "epoch: 177 loss: 0.47683224081993103\n",
            "epoch: 178 loss: 0.47623059153556824\n",
            "epoch: 179 loss: 0.4756303131580353\n",
            "epoch: 180 loss: 0.4750322997570038\n",
            "epoch: 181 loss: 0.47443583607673645\n",
            "epoch: 182 loss: 0.4738411605358124\n",
            "epoch: 183 loss: 0.47324806451797485\n",
            "epoch: 184 loss: 0.4726565480232239\n",
            "epoch: 185 loss: 0.47206705808639526\n",
            "epoch: 186 loss: 0.4714791476726532\n",
            "epoch: 187 loss: 0.47089287638664246\n",
            "epoch: 188 loss: 0.47030842304229736\n",
            "epoch: 189 loss: 0.4697253704071045\n",
            "epoch: 190 loss: 0.4691442549228668\n",
            "epoch: 191 loss: 0.4685647487640381\n",
            "epoch: 192 loss: 0.46798667311668396\n",
            "epoch: 193 loss: 0.46741050481796265\n",
            "epoch: 194 loss: 0.4668358266353607\n",
            "epoch: 195 loss: 0.46626290678977966\n",
            "epoch: 196 loss: 0.4656916558742523\n",
            "epoch: 197 loss: 0.4651219844818115\n",
            "epoch: 198 loss: 0.4645538330078125\n",
            "epoch: 199 loss: 0.46398746967315674\n",
            "epoch: 200 loss: 0.46342262625694275\n",
            "epoch: 201 loss: 0.46285927295684814\n",
            "epoch: 202 loss: 0.4622977077960968\n",
            "epoch: 203 loss: 0.46173766255378723\n",
            "epoch: 204 loss: 0.4611791968345642\n",
            "epoch: 205 loss: 0.46062225103378296\n",
            "epoch: 206 loss: 0.46006691455841064\n",
            "epoch: 207 loss: 0.45951324701309204\n",
            "epoch: 208 loss: 0.4589608311653137\n",
            "epoch: 209 loss: 0.45841044187545776\n",
            "epoch: 210 loss: 0.45786118507385254\n",
            "epoch: 211 loss: 0.4573136270046234\n",
            "epoch: 212 loss: 0.45676758885383606\n",
            "epoch: 213 loss: 0.45622318983078003\n",
            "epoch: 214 loss: 0.45568016171455383\n",
            "epoch: 215 loss: 0.4551387131214142\n",
            "epoch: 216 loss: 0.45459869503974915\n",
            "epoch: 217 loss: 0.45406028628349304\n",
            "epoch: 218 loss: 0.4535233974456787\n",
            "epoch: 219 loss: 0.4529879093170166\n",
            "epoch: 220 loss: 0.4524538516998291\n",
            "epoch: 221 loss: 0.4519214332103729\n",
            "epoch: 222 loss: 0.4513905346393585\n",
            "epoch: 223 loss: 0.4508609473705292\n",
            "epoch: 224 loss: 0.4503328800201416\n",
            "epoch: 225 loss: 0.4498063027858734\n",
            "epoch: 226 loss: 0.44928112626075745\n",
            "epoch: 227 loss: 0.44875743985176086\n",
            "epoch: 228 loss: 0.44823524355888367\n",
            "epoch: 229 loss: 0.4477144181728363\n",
            "epoch: 230 loss: 0.4471950829029083\n",
            "epoch: 231 loss: 0.44667720794677734\n",
            "epoch: 232 loss: 0.4461606740951538\n",
            "epoch: 233 loss: 0.4456455707550049\n",
            "epoch: 234 loss: 0.4451318681240082\n",
            "epoch: 235 loss: 0.4446195662021637\n",
            "epoch: 236 loss: 0.4441088140010834\n",
            "epoch: 237 loss: 0.4435991942882538\n",
            "epoch: 238 loss: 0.4430912137031555\n",
            "epoch: 239 loss: 0.44258439540863037\n",
            "epoch: 240 loss: 0.44207894802093506\n",
            "epoch: 241 loss: 0.44157522916793823\n",
            "epoch: 242 loss: 0.4410724639892578\n",
            "epoch: 243 loss: 0.4405713379383087\n",
            "epoch: 244 loss: 0.4400714933872223\n",
            "epoch: 245 loss: 0.43957290053367615\n",
            "epoch: 246 loss: 0.439075767993927\n",
            "epoch: 247 loss: 0.43858012557029724\n",
            "epoch: 248 loss: 0.438085675239563\n",
            "epoch: 249 loss: 0.437592476606369\n",
            "epoch: 250 loss: 0.43710049986839294\n",
            "epoch: 251 loss: 0.4366101324558258\n",
            "epoch: 252 loss: 0.4361210763454437\n",
            "epoch: 253 loss: 0.4356331527233124\n",
            "epoch: 254 loss: 0.4351467490196228\n",
            "epoch: 255 loss: 0.4346614480018616\n",
            "epoch: 256 loss: 0.4341774880886078\n",
            "epoch: 257 loss: 0.43369483947753906\n",
            "epoch: 258 loss: 0.43321359157562256\n",
            "epoch: 259 loss: 0.43273353576660156\n",
            "epoch: 260 loss: 0.43225476145744324\n",
            "epoch: 261 loss: 0.43177711963653564\n",
            "epoch: 262 loss: 0.43130093812942505\n",
            "epoch: 263 loss: 0.4308260381221771\n",
            "epoch: 264 loss: 0.4303523004055023\n",
            "epoch: 265 loss: 0.4298797845840454\n",
            "epoch: 266 loss: 0.4294084906578064\n",
            "epoch: 267 loss: 0.42893868684768677\n",
            "epoch: 268 loss: 0.42847001552581787\n",
            "epoch: 269 loss: 0.4280024766921997\n",
            "epoch: 270 loss: 0.4275362491607666\n",
            "epoch: 271 loss: 0.42707115411758423\n",
            "epoch: 272 loss: 0.42660748958587646\n",
            "epoch: 273 loss: 0.4261450171470642\n",
            "epoch: 274 loss: 0.42568355798721313\n",
            "epoch: 275 loss: 0.42522352933883667\n",
            "epoch: 276 loss: 0.42476463317871094\n",
            "epoch: 277 loss: 0.42430704832077026\n",
            "epoch: 278 loss: 0.42385023832321167\n",
            "epoch: 279 loss: 0.4233950078487396\n",
            "epoch: 280 loss: 0.42294082045555115\n",
            "epoch: 281 loss: 0.42248794436454773\n",
            "epoch: 282 loss: 0.42203617095947266\n",
            "epoch: 283 loss: 0.4215855896472931\n",
            "epoch: 284 loss: 0.42113614082336426\n",
            "epoch: 285 loss: 0.42068779468536377\n",
            "epoch: 286 loss: 0.4202407896518707\n",
            "epoch: 287 loss: 0.4197949469089508\n",
            "epoch: 288 loss: 0.4193502366542816\n",
            "epoch: 289 loss: 0.4189063608646393\n",
            "epoch: 290 loss: 0.41846397519111633\n",
            "epoch: 291 loss: 0.41802260279655457\n",
            "epoch: 292 loss: 0.417582631111145\n",
            "epoch: 293 loss: 0.4171435236930847\n",
            "epoch: 294 loss: 0.4167054295539856\n",
            "epoch: 295 loss: 0.4162687063217163\n",
            "epoch: 296 loss: 0.41583287715911865\n",
            "epoch: 297 loss: 0.4153984785079956\n",
            "epoch: 298 loss: 0.4149649739265442\n",
            "epoch: 299 loss: 0.4145326316356659\n",
            "epoch: 300 loss: 0.41410133242607117\n",
            "epoch: 301 loss: 0.4136713147163391\n",
            "epoch: 302 loss: 0.4132422208786011\n",
            "epoch: 303 loss: 0.4128142297267914\n",
            "epoch: 304 loss: 0.4123874604701996\n",
            "epoch: 305 loss: 0.4119616448879242\n",
            "epoch: 306 loss: 0.4115370213985443\n",
            "epoch: 307 loss: 0.41111335158348083\n",
            "epoch: 308 loss: 0.4106908440589905\n",
            "epoch: 309 loss: 0.4102693796157837\n",
            "epoch: 310 loss: 0.40984901785850525\n",
            "epoch: 311 loss: 0.4094295799732208\n",
            "epoch: 312 loss: 0.4090113937854767\n",
            "epoch: 313 loss: 0.4085940420627594\n",
            "epoch: 314 loss: 0.40817803144454956\n",
            "epoch: 315 loss: 0.4077627956867218\n",
            "epoch: 316 loss: 0.40734875202178955\n",
            "epoch: 317 loss: 0.40693560242652893\n",
            "epoch: 318 loss: 0.40652385354042053\n",
            "epoch: 319 loss: 0.40611279010772705\n",
            "epoch: 320 loss: 0.40570276975631714\n",
            "epoch: 321 loss: 0.40529385209083557\n",
            "epoch: 322 loss: 0.40488606691360474\n",
            "epoch: 323 loss: 0.40447911620140076\n",
            "epoch: 324 loss: 0.4040732681751251\n",
            "epoch: 325 loss: 0.4036683738231659\n",
            "epoch: 326 loss: 0.40326446294784546\n",
            "epoch: 327 loss: 0.4028615951538086\n",
            "epoch: 328 loss: 0.40245985984802246\n",
            "epoch: 329 loss: 0.40205898880958557\n",
            "epoch: 330 loss: 0.40165916085243225\n",
            "epoch: 331 loss: 0.40126025676727295\n",
            "epoch: 332 loss: 0.400862455368042\n",
            "epoch: 333 loss: 0.4004655182361603\n",
            "epoch: 334 loss: 0.4000696539878845\n",
            "epoch: 335 loss: 0.399674654006958\n",
            "epoch: 336 loss: 0.3992806673049927\n",
            "epoch: 337 loss: 0.39888766407966614\n",
            "epoch: 338 loss: 0.39849549531936646\n",
            "epoch: 339 loss: 0.39810463786125183\n",
            "epoch: 340 loss: 0.3977143168449402\n",
            "epoch: 341 loss: 0.3973252475261688\n",
            "epoch: 342 loss: 0.3969371020793915\n",
            "epoch: 343 loss: 0.396549791097641\n",
            "epoch: 344 loss: 0.3961635231971741\n",
            "epoch: 345 loss: 0.3957781493663788\n",
            "epoch: 346 loss: 0.39539361000061035\n",
            "epoch: 347 loss: 0.39501017332077026\n",
            "epoch: 348 loss: 0.39462757110595703\n",
            "epoch: 349 loss: 0.3942459523677826\n",
            "epoch: 350 loss: 0.3938651978969574\n",
            "epoch: 351 loss: 0.3934853672981262\n",
            "epoch: 352 loss: 0.39310649037361145\n",
            "epoch: 353 loss: 0.3927285373210907\n",
            "epoch: 354 loss: 0.3923514187335968\n",
            "epoch: 355 loss: 0.39197540283203125\n",
            "epoch: 356 loss: 0.39160001277923584\n",
            "epoch: 357 loss: 0.39122581481933594\n",
            "epoch: 358 loss: 0.3908523619174957\n",
            "epoch: 359 loss: 0.3904797434806824\n",
            "epoch: 360 loss: 0.3901081383228302\n",
            "epoch: 361 loss: 0.3897373676300049\n",
            "epoch: 362 loss: 0.38936755061149597\n",
            "epoch: 363 loss: 0.38899853825569153\n",
            "epoch: 364 loss: 0.3886304199695587\n",
            "epoch: 365 loss: 0.38826319575309753\n",
            "epoch: 366 loss: 0.38789692521095276\n",
            "epoch: 367 loss: 0.38753142952919006\n",
            "epoch: 368 loss: 0.3871667981147766\n",
            "epoch: 369 loss: 0.38680294156074524\n",
            "epoch: 370 loss: 0.386440247297287\n",
            "epoch: 371 loss: 0.3860781490802765\n",
            "epoch: 372 loss: 0.38571697473526\n",
            "epoch: 373 loss: 0.38535675406455994\n",
            "epoch: 374 loss: 0.3849973678588867\n",
            "epoch: 375 loss: 0.3846386969089508\n",
            "epoch: 376 loss: 0.3842810094356537\n",
            "epoch: 377 loss: 0.38392409682273865\n",
            "epoch: 378 loss: 0.3835679590702057\n",
            "epoch: 379 loss: 0.3832126259803772\n",
            "epoch: 380 loss: 0.38285836577415466\n",
            "epoch: 381 loss: 0.3825048506259918\n",
            "epoch: 382 loss: 0.3821520507335663\n",
            "epoch: 383 loss: 0.3818000853061676\n",
            "epoch: 384 loss: 0.3814489245414734\n",
            "epoch: 385 loss: 0.3810987174510956\n",
            "epoch: 386 loss: 0.3807491958141327\n",
            "epoch: 387 loss: 0.3804006576538086\n",
            "epoch: 388 loss: 0.3800526559352875\n",
            "epoch: 389 loss: 0.3797057271003723\n",
            "epoch: 390 loss: 0.37935951352119446\n",
            "epoch: 391 loss: 0.37901413440704346\n",
            "epoch: 392 loss: 0.37866947054862976\n",
            "epoch: 393 loss: 0.3783257305622101\n",
            "epoch: 394 loss: 0.37798264622688293\n",
            "epoch: 395 loss: 0.37764036655426025\n",
            "epoch: 396 loss: 0.37729892134666443\n",
            "epoch: 397 loss: 0.37695831060409546\n",
            "epoch: 398 loss: 0.3766184151172638\n",
            "epoch: 399 loss: 0.3762793242931366\n",
            "epoch: 400 loss: 0.37594103813171387\n",
            "epoch: 401 loss: 0.37560349702835083\n",
            "epoch: 402 loss: 0.37526679039001465\n",
            "epoch: 403 loss: 0.37493079900741577\n",
            "epoch: 404 loss: 0.3745954930782318\n",
            "epoch: 405 loss: 0.3742610812187195\n",
            "epoch: 406 loss: 0.37392738461494446\n",
            "epoch: 407 loss: 0.37359458208084106\n",
            "epoch: 408 loss: 0.37326228618621826\n",
            "epoch: 409 loss: 0.3729308843612671\n",
            "epoch: 410 loss: 0.3726001977920532\n",
            "epoch: 411 loss: 0.372270405292511\n",
            "epoch: 412 loss: 0.3719412684440613\n",
            "epoch: 413 loss: 0.3716128170490265\n",
            "epoch: 414 loss: 0.371285080909729\n",
            "epoch: 415 loss: 0.37095823884010315\n",
            "epoch: 416 loss: 0.37063202261924744\n",
            "epoch: 417 loss: 0.3703065514564514\n",
            "epoch: 418 loss: 0.36998191475868225\n",
            "epoch: 419 loss: 0.3696579039096832\n",
            "epoch: 420 loss: 0.36933472752571106\n",
            "epoch: 421 loss: 0.36901217699050903\n",
            "epoch: 422 loss: 0.3686903715133667\n",
            "epoch: 423 loss: 0.36836928129196167\n",
            "epoch: 424 loss: 0.36804890632629395\n",
            "epoch: 425 loss: 0.3677292764186859\n",
            "epoch: 426 loss: 0.3674103915691376\n",
            "epoch: 427 loss: 0.3670922517776489\n",
            "epoch: 428 loss: 0.3667745590209961\n",
            "epoch: 429 loss: 0.36645781993865967\n",
            "epoch: 430 loss: 0.3661418557167053\n",
            "epoch: 431 loss: 0.36582642793655396\n",
            "epoch: 432 loss: 0.3655116558074951\n",
            "epoch: 433 loss: 0.36519771814346313\n",
            "epoch: 434 loss: 0.3648844063282013\n",
            "epoch: 435 loss: 0.3645719587802887\n",
            "epoch: 436 loss: 0.36425986886024475\n",
            "epoch: 437 loss: 0.36394867300987244\n",
            "epoch: 438 loss: 0.36363810300827026\n",
            "epoch: 439 loss: 0.36332833766937256\n",
            "epoch: 440 loss: 0.3630192279815674\n",
            "epoch: 441 loss: 0.3627106845378876\n",
            "epoch: 442 loss: 0.36240288615226746\n",
            "epoch: 443 loss: 0.36209580302238464\n",
            "epoch: 444 loss: 0.36178919672966003\n",
            "epoch: 445 loss: 0.3614836037158966\n",
            "epoch: 446 loss: 0.3611784875392914\n",
            "epoch: 447 loss: 0.3608740270137787\n",
            "epoch: 448 loss: 0.36057013273239136\n",
            "epoch: 449 loss: 0.36026710271835327\n",
            "epoch: 450 loss: 0.3599647879600525\n",
            "epoch: 451 loss: 0.3596627712249756\n",
            "epoch: 452 loss: 0.3593617379665375\n",
            "epoch: 453 loss: 0.35906124114990234\n",
            "epoch: 454 loss: 0.35876142978668213\n",
            "epoch: 455 loss: 0.35846224427223206\n",
            "epoch: 456 loss: 0.3581637144088745\n",
            "epoch: 457 loss: 0.35786575078964233\n",
            "epoch: 458 loss: 0.3575686514377594\n",
            "epoch: 459 loss: 0.3572719991207123\n",
            "epoch: 460 loss: 0.3569760024547577\n",
            "epoch: 461 loss: 0.3566807508468628\n",
            "epoch: 462 loss: 0.3563860356807709\n",
            "epoch: 463 loss: 0.35609206557273865\n",
            "epoch: 464 loss: 0.35579854249954224\n",
            "epoch: 465 loss: 0.35550570487976074\n",
            "epoch: 466 loss: 0.35521361231803894\n",
            "epoch: 467 loss: 0.35492220520973206\n",
            "epoch: 468 loss: 0.35463112592697144\n",
            "epoch: 469 loss: 0.35434094071388245\n",
            "epoch: 470 loss: 0.35405123233795166\n",
            "epoch: 471 loss: 0.3537622392177582\n",
            "epoch: 472 loss: 0.3534739315509796\n",
            "epoch: 473 loss: 0.3531860113143921\n",
            "epoch: 474 loss: 0.3528987765312195\n",
            "epoch: 475 loss: 0.3526122272014618\n",
            "epoch: 476 loss: 0.3523262143135071\n",
            "epoch: 477 loss: 0.3520407974720001\n",
            "epoch: 478 loss: 0.35175594687461853\n",
            "epoch: 479 loss: 0.351471871137619\n",
            "epoch: 480 loss: 0.3511882722377777\n",
            "epoch: 481 loss: 0.35090532898902893\n",
            "epoch: 482 loss: 0.3506229519844055\n",
            "epoch: 483 loss: 0.35034123063087463\n",
            "epoch: 484 loss: 0.35006001591682434\n",
            "epoch: 485 loss: 0.34977948665618896\n",
            "epoch: 486 loss: 0.34949952363967896\n",
            "epoch: 487 loss: 0.3492198884487152\n",
            "epoch: 488 loss: 0.34894120693206787\n",
            "epoch: 489 loss: 0.34866294264793396\n",
            "epoch: 490 loss: 0.3483852446079254\n",
            "epoch: 491 loss: 0.348108172416687\n",
            "epoch: 492 loss: 0.34783169627189636\n",
            "epoch: 493 loss: 0.3475557267665863\n",
            "epoch: 494 loss: 0.3472804129123688\n",
            "epoch: 495 loss: 0.34700560569763184\n",
            "epoch: 496 loss: 0.3467313051223755\n",
            "epoch: 497 loss: 0.3464578688144684\n",
            "epoch: 498 loss: 0.346184641122818\n",
            "epoch: 499 loss: 0.3459121286869049\n",
            "epoch: 500 loss: 0.34564027190208435\n",
            "epoch: 501 loss: 0.345368891954422\n",
            "epoch: 502 loss: 0.3450981378555298\n",
            "epoch: 503 loss: 0.34482792019844055\n",
            "epoch: 504 loss: 0.34455811977386475\n",
            "epoch: 505 loss: 0.34428897500038147\n",
            "epoch: 506 loss: 0.34402039647102356\n",
            "epoch: 507 loss: 0.34375235438346863\n",
            "epoch: 508 loss: 0.34348490834236145\n",
            "epoch: 509 loss: 0.3432179391384125\n",
            "epoch: 510 loss: 0.34295162558555603\n",
            "epoch: 511 loss: 0.3426858186721802\n",
            "epoch: 512 loss: 0.3424203395843506\n",
            "epoch: 513 loss: 0.3421556353569031\n",
            "epoch: 514 loss: 0.34189143776893616\n",
            "epoch: 515 loss: 0.3416278064250946\n",
            "epoch: 516 loss: 0.3413645625114441\n",
            "epoch: 517 loss: 0.3411019444465637\n",
            "epoch: 518 loss: 0.34084004163742065\n",
            "epoch: 519 loss: 0.3405783772468567\n",
            "epoch: 520 loss: 0.3403174877166748\n",
            "epoch: 521 loss: 0.34005698561668396\n",
            "epoch: 522 loss: 0.3397969901561737\n",
            "epoch: 523 loss: 0.3395375907421112\n",
            "epoch: 524 loss: 0.3392787575721741\n",
            "epoch: 525 loss: 0.33902034163475037\n",
            "epoch: 526 loss: 0.33876246213912964\n",
            "epoch: 527 loss: 0.33850517868995667\n",
            "epoch: 528 loss: 0.33824828267097473\n",
            "epoch: 529 loss: 0.3379921019077301\n",
            "epoch: 530 loss: 0.3377362787723541\n",
            "epoch: 531 loss: 0.33748099207878113\n",
            "epoch: 532 loss: 0.33722636103630066\n",
            "epoch: 533 loss: 0.3369719982147217\n",
            "epoch: 534 loss: 0.3367183208465576\n",
            "epoch: 535 loss: 0.3364649713039398\n",
            "epoch: 536 loss: 0.33621230721473694\n",
            "epoch: 537 loss: 0.33596011996269226\n",
            "epoch: 538 loss: 0.3357083797454834\n",
            "epoch: 539 loss: 0.3354572355747223\n",
            "epoch: 540 loss: 0.3352064788341522\n",
            "epoch: 541 loss: 0.33495619893074036\n",
            "epoch: 542 loss: 0.33470645546913147\n",
            "epoch: 543 loss: 0.33445727825164795\n",
            "epoch: 544 loss: 0.3342086374759674\n",
            "epoch: 545 loss: 0.3339603841304779\n",
            "epoch: 546 loss: 0.33371248841285706\n",
            "epoch: 547 loss: 0.3334653079509735\n",
            "epoch: 548 loss: 0.3332185745239258\n",
            "epoch: 549 loss: 0.3329722583293915\n",
            "epoch: 550 loss: 0.332726389169693\n",
            "epoch: 551 loss: 0.33248114585876465\n",
            "epoch: 552 loss: 0.33223628997802734\n",
            "epoch: 553 loss: 0.331991970539093\n",
            "epoch: 554 loss: 0.3317481279373169\n",
            "epoch: 555 loss: 0.33150479197502136\n",
            "epoch: 556 loss: 0.3312618136405945\n",
            "epoch: 557 loss: 0.33101943135261536\n",
            "epoch: 558 loss: 0.33077743649482727\n",
            "epoch: 559 loss: 0.3305359184741974\n",
            "epoch: 560 loss: 0.3302949070930481\n",
            "epoch: 561 loss: 0.33005425333976746\n",
            "epoch: 562 loss: 0.32981425523757935\n",
            "epoch: 563 loss: 0.3295746147632599\n",
            "epoch: 564 loss: 0.32933560013771057\n",
            "epoch: 565 loss: 0.32909679412841797\n",
            "epoch: 566 loss: 0.3288586437702179\n",
            "epoch: 567 loss: 0.3286207616329193\n",
            "epoch: 568 loss: 0.32838356494903564\n",
            "epoch: 569 loss: 0.32814663648605347\n",
            "epoch: 570 loss: 0.32791030406951904\n",
            "epoch: 571 loss: 0.32767432928085327\n",
            "epoch: 572 loss: 0.3274388611316681\n",
            "epoch: 573 loss: 0.32720378041267395\n",
            "epoch: 574 loss: 0.3269692659378052\n",
            "epoch: 575 loss: 0.32673510909080505\n",
            "epoch: 576 loss: 0.3265014588832855\n",
            "epoch: 577 loss: 0.3262682855129242\n",
            "epoch: 578 loss: 0.3260354995727539\n",
            "epoch: 579 loss: 0.32580316066741943\n",
            "epoch: 580 loss: 0.32557129859924316\n",
            "epoch: 581 loss: 0.3253398537635803\n",
            "epoch: 582 loss: 0.3251088261604309\n",
            "epoch: 583 loss: 0.3248782753944397\n",
            "epoch: 584 loss: 0.3246481716632843\n",
            "epoch: 585 loss: 0.32441848516464233\n",
            "epoch: 586 loss: 0.3241891860961914\n",
            "epoch: 587 loss: 0.32396042346954346\n",
            "epoch: 588 loss: 0.32373207807540894\n",
            "epoch: 589 loss: 0.32350409030914307\n",
            "epoch: 590 loss: 0.3232766091823578\n",
            "epoch: 591 loss: 0.32304951548576355\n",
            "epoch: 592 loss: 0.32282280921936035\n",
            "epoch: 593 loss: 0.32259663939476013\n",
            "epoch: 594 loss: 0.3223707973957062\n",
            "epoch: 595 loss: 0.3221454620361328\n",
            "epoch: 596 loss: 0.3219205439090729\n",
            "epoch: 597 loss: 0.32169604301452637\n",
            "epoch: 598 loss: 0.3214719295501709\n",
            "epoch: 599 loss: 0.32124829292297363\n",
            "epoch: 600 loss: 0.32102492451667786\n",
            "epoch: 601 loss: 0.3208022713661194\n",
            "epoch: 602 loss: 0.3205796778202057\n",
            "epoch: 603 loss: 0.3203578293323517\n",
            "epoch: 604 loss: 0.3201361894607544\n",
            "epoch: 605 loss: 0.3199150562286377\n",
            "epoch: 606 loss: 0.3196941316127777\n",
            "epoch: 607 loss: 0.3194738030433655\n",
            "epoch: 608 loss: 0.3192538917064667\n",
            "epoch: 609 loss: 0.3190343379974365\n",
            "epoch: 610 loss: 0.318815141916275\n",
            "epoch: 611 loss: 0.3185964822769165\n",
            "epoch: 612 loss: 0.3183782398700714\n",
            "epoch: 613 loss: 0.3181602656841278\n",
            "epoch: 614 loss: 0.31794273853302\n",
            "epoch: 615 loss: 0.31772562861442566\n",
            "epoch: 616 loss: 0.3175089955329895\n",
            "epoch: 617 loss: 0.317292720079422\n",
            "epoch: 618 loss: 0.3170766532421112\n",
            "epoch: 619 loss: 0.31686127185821533\n",
            "epoch: 620 loss: 0.31664618849754333\n",
            "epoch: 621 loss: 0.3164314329624176\n",
            "epoch: 622 loss: 0.3162171244621277\n",
            "epoch: 623 loss: 0.3160032331943512\n",
            "epoch: 624 loss: 0.3157895505428314\n",
            "epoch: 625 loss: 0.315576434135437\n",
            "epoch: 626 loss: 0.31536373496055603\n",
            "epoch: 627 loss: 0.3151513338088989\n",
            "epoch: 628 loss: 0.3149394094944\n",
            "epoch: 629 loss: 0.3147277235984802\n",
            "epoch: 630 loss: 0.3145165741443634\n",
            "epoch: 631 loss: 0.31430575251579285\n",
            "epoch: 632 loss: 0.31409531831741333\n",
            "epoch: 633 loss: 0.3138852119445801\n",
            "epoch: 634 loss: 0.3136756420135498\n",
            "epoch: 635 loss: 0.31346625089645386\n",
            "epoch: 636 loss: 0.3132573366165161\n",
            "epoch: 637 loss: 0.313048779964447\n",
            "epoch: 638 loss: 0.31284067034721375\n",
            "epoch: 639 loss: 0.3126329183578491\n",
            "epoch: 640 loss: 0.312425434589386\n",
            "epoch: 641 loss: 0.31221848726272583\n",
            "epoch: 642 loss: 0.3120117485523224\n",
            "epoch: 643 loss: 0.3118055462837219\n",
            "epoch: 644 loss: 0.3115994930267334\n",
            "epoch: 645 loss: 0.31139397621154785\n",
            "epoch: 646 loss: 0.31118881702423096\n",
            "epoch: 647 loss: 0.3109840452671051\n",
            "epoch: 648 loss: 0.3107796013355255\n",
            "epoch: 649 loss: 0.3105754554271698\n",
            "epoch: 650 loss: 0.31037193536758423\n",
            "epoch: 651 loss: 0.31016844511032104\n",
            "epoch: 652 loss: 0.30996549129486084\n",
            "epoch: 653 loss: 0.3097628355026245\n",
            "epoch: 654 loss: 0.3095605969429016\n",
            "epoch: 655 loss: 0.30935874581336975\n",
            "epoch: 656 loss: 0.30915719270706177\n",
            "epoch: 657 loss: 0.30895599722862244\n",
            "epoch: 658 loss: 0.308755099773407\n",
            "epoch: 659 loss: 0.30855467915534973\n",
            "epoch: 660 loss: 0.30835455656051636\n",
            "epoch: 661 loss: 0.3081548511981964\n",
            "epoch: 662 loss: 0.30795541405677795\n",
            "epoch: 663 loss: 0.30775636434555054\n",
            "epoch: 664 loss: 0.3075575828552246\n",
            "epoch: 665 loss: 0.3073593080043793\n",
            "epoch: 666 loss: 0.3071613311767578\n",
            "epoch: 667 loss: 0.3069636821746826\n",
            "epoch: 668 loss: 0.3067662715911865\n",
            "epoch: 669 loss: 0.30656933784484863\n",
            "epoch: 670 loss: 0.30637282133102417\n",
            "epoch: 671 loss: 0.30617648363113403\n",
            "epoch: 672 loss: 0.3059805929660797\n",
            "epoch: 673 loss: 0.3057849407196045\n",
            "epoch: 674 loss: 0.3055897355079651\n",
            "epoch: 675 loss: 0.3053949177265167\n",
            "epoch: 676 loss: 0.30520033836364746\n",
            "epoch: 677 loss: 0.30500611662864685\n",
            "epoch: 678 loss: 0.3048121929168701\n",
            "epoch: 679 loss: 0.30461862683296204\n",
            "epoch: 680 loss: 0.3044254183769226\n",
            "epoch: 681 loss: 0.3042326867580414\n",
            "epoch: 682 loss: 0.3040400445461273\n",
            "epoch: 683 loss: 0.30384787917137146\n",
            "epoch: 684 loss: 0.3036560118198395\n",
            "epoch: 685 loss: 0.30346444249153137\n",
            "epoch: 686 loss: 0.30327317118644714\n",
            "epoch: 687 loss: 0.30308234691619873\n",
            "epoch: 688 loss: 0.3028918206691742\n",
            "epoch: 689 loss: 0.30270150303840637\n",
            "epoch: 690 loss: 0.30251166224479675\n",
            "epoch: 691 loss: 0.302322119474411\n",
            "epoch: 692 loss: 0.30213287472724915\n",
            "epoch: 693 loss: 0.30194395780563354\n",
            "epoch: 694 loss: 0.3017553389072418\n",
            "epoch: 695 loss: 0.3015671670436859\n",
            "epoch: 696 loss: 0.3013792037963867\n",
            "epoch: 697 loss: 0.3011915683746338\n",
            "epoch: 698 loss: 0.3010042905807495\n",
            "epoch: 699 loss: 0.3008173108100891\n",
            "epoch: 700 loss: 0.30063068866729736\n",
            "epoch: 701 loss: 0.3004443645477295\n",
            "epoch: 702 loss: 0.3002582788467407\n",
            "epoch: 703 loss: 0.300072580575943\n",
            "epoch: 704 loss: 0.2998872697353363\n",
            "epoch: 705 loss: 0.29970210790634155\n",
            "epoch: 706 loss: 0.299517422914505\n",
            "epoch: 707 loss: 0.2993329167366028\n",
            "epoch: 708 loss: 0.299148827791214\n",
            "epoch: 709 loss: 0.2989649176597595\n",
            "epoch: 710 loss: 0.29878148436546326\n",
            "epoch: 711 loss: 0.2985983192920685\n",
            "epoch: 712 loss: 0.2984153926372528\n",
            "epoch: 713 loss: 0.2982327938079834\n",
            "epoch: 714 loss: 0.29805052280426025\n",
            "epoch: 715 loss: 0.29786860942840576\n",
            "epoch: 716 loss: 0.29768693447113037\n",
            "epoch: 717 loss: 0.29750561714172363\n",
            "epoch: 718 loss: 0.2973245084285736\n",
            "epoch: 719 loss: 0.297143816947937\n",
            "epoch: 720 loss: 0.29696333408355713\n",
            "epoch: 721 loss: 0.2967832088470459\n",
            "epoch: 722 loss: 0.29660338163375854\n",
            "epoch: 723 loss: 0.2964238226413727\n",
            "epoch: 724 loss: 0.29624462127685547\n",
            "epoch: 725 loss: 0.29606562852859497\n",
            "epoch: 726 loss: 0.29588696360588074\n",
            "epoch: 727 loss: 0.29570862650871277\n",
            "epoch: 728 loss: 0.29553067684173584\n",
            "epoch: 729 loss: 0.2953529357910156\n",
            "epoch: 730 loss: 0.2951754331588745\n",
            "epoch: 731 loss: 0.29499825835227966\n",
            "epoch: 732 loss: 0.29482144117355347\n",
            "epoch: 733 loss: 0.29464492201805115\n",
            "epoch: 734 loss: 0.2944685220718384\n",
            "epoch: 735 loss: 0.29429250955581665\n",
            "epoch: 736 loss: 0.29411688446998596\n",
            "epoch: 737 loss: 0.2939414978027344\n",
            "epoch: 738 loss: 0.29376640915870667\n",
            "epoch: 739 loss: 0.29359155893325806\n",
            "epoch: 740 loss: 0.2934170067310333\n",
            "epoch: 741 loss: 0.29324275255203247\n",
            "epoch: 742 loss: 0.2930687665939331\n",
            "epoch: 743 loss: 0.29289510846138\n",
            "epoch: 744 loss: 0.2927217185497284\n",
            "epoch: 745 loss: 0.29254862666130066\n",
            "epoch: 746 loss: 0.29237574338912964\n",
            "epoch: 747 loss: 0.2922031879425049\n",
            "epoch: 748 loss: 0.2920309901237488\n",
            "epoch: 749 loss: 0.2918590009212494\n",
            "epoch: 750 loss: 0.2916873097419739\n",
            "epoch: 751 loss: 0.29151585698127747\n",
            "epoch: 752 loss: 0.2913447618484497\n",
            "epoch: 753 loss: 0.29117393493652344\n",
            "epoch: 754 loss: 0.2910033166408539\n",
            "epoch: 755 loss: 0.2908329665660858\n",
            "epoch: 756 loss: 0.2906630039215088\n",
            "epoch: 757 loss: 0.29049327969551086\n",
            "epoch: 758 loss: 0.29032376408576965\n",
            "epoch: 759 loss: 0.2901546359062195\n",
            "epoch: 760 loss: 0.2899855971336365\n",
            "epoch: 761 loss: 0.28981703519821167\n",
            "epoch: 762 loss: 0.2896486520767212\n",
            "epoch: 763 loss: 0.2894805669784546\n",
            "epoch: 764 loss: 0.2893126308917999\n",
            "epoch: 765 loss: 0.2891451120376587\n",
            "epoch: 766 loss: 0.28897780179977417\n",
            "epoch: 767 loss: 0.2888107895851135\n",
            "epoch: 768 loss: 0.2886439859867096\n",
            "epoch: 769 loss: 0.2884775698184967\n",
            "epoch: 770 loss: 0.28831130266189575\n",
            "epoch: 771 loss: 0.28814536333084106\n",
            "epoch: 772 loss: 0.28797975182533264\n",
            "epoch: 773 loss: 0.2878141701221466\n",
            "epoch: 774 loss: 0.28764912486076355\n",
            "epoch: 775 loss: 0.28748419880867004\n",
            "epoch: 776 loss: 0.2873196005821228\n",
            "epoch: 777 loss: 0.28715527057647705\n",
            "epoch: 778 loss: 0.28699102997779846\n",
            "epoch: 779 loss: 0.2868272364139557\n",
            "epoch: 780 loss: 0.2866637110710144\n",
            "epoch: 781 loss: 0.28650033473968506\n",
            "epoch: 782 loss: 0.2863372564315796\n",
            "epoch: 783 loss: 0.2861744463443756\n",
            "epoch: 784 loss: 0.28601181507110596\n",
            "epoch: 785 loss: 0.28584954142570496\n",
            "epoch: 786 loss: 0.28568753600120544\n",
            "epoch: 787 loss: 0.28552570939064026\n",
            "epoch: 788 loss: 0.28536418080329895\n",
            "epoch: 789 loss: 0.2852029502391815\n",
            "epoch: 790 loss: 0.2850418984889984\n",
            "epoch: 791 loss: 0.2848811447620392\n",
            "epoch: 792 loss: 0.2847207188606262\n",
            "epoch: 793 loss: 0.2845603823661804\n",
            "epoch: 794 loss: 0.28440049290657043\n",
            "epoch: 795 loss: 0.28424060344696045\n",
            "epoch: 796 loss: 0.2840811610221863\n",
            "epoch: 797 loss: 0.28392189741134644\n",
            "epoch: 798 loss: 0.28376293182373047\n",
            "epoch: 799 loss: 0.28360411524772644\n",
            "epoch: 800 loss: 0.28344565629959106\n",
            "epoch: 801 loss: 0.28328737616539\n",
            "epoch: 802 loss: 0.2831293046474457\n",
            "epoch: 803 loss: 0.2829716205596924\n",
            "epoch: 804 loss: 0.2828141152858734\n",
            "epoch: 805 loss: 0.28265678882598877\n",
            "epoch: 806 loss: 0.2824997901916504\n",
            "epoch: 807 loss: 0.2823430299758911\n",
            "epoch: 808 loss: 0.2821864187717438\n",
            "epoch: 809 loss: 0.2820301651954651\n",
            "epoch: 810 loss: 0.2818740904331207\n",
            "epoch: 811 loss: 0.28171828389167786\n",
            "epoch: 812 loss: 0.28156277537345886\n",
            "epoch: 813 loss: 0.2814074158668518\n",
            "epoch: 814 loss: 0.2812522351741791\n",
            "epoch: 815 loss: 0.2810974419116974\n",
            "epoch: 816 loss: 0.28094279766082764\n",
            "epoch: 817 loss: 0.2807884216308594\n",
            "epoch: 818 loss: 0.2806342840194702\n",
            "epoch: 819 loss: 0.2804804742336273\n",
            "epoch: 820 loss: 0.2803266942501068\n",
            "epoch: 821 loss: 0.28017333149909973\n",
            "epoch: 822 loss: 0.2800200581550598\n",
            "epoch: 823 loss: 0.2798670530319214\n",
            "epoch: 824 loss: 0.279714435338974\n",
            "epoch: 825 loss: 0.2795618772506714\n",
            "epoch: 826 loss: 0.2794097661972046\n",
            "epoch: 827 loss: 0.2792576849460602\n",
            "epoch: 828 loss: 0.2791058421134949\n",
            "epoch: 829 loss: 0.27895432710647583\n",
            "epoch: 830 loss: 0.2788029611110687\n",
            "epoch: 831 loss: 0.2786518931388855\n",
            "epoch: 832 loss: 0.2785010039806366\n",
            "epoch: 833 loss: 0.2783503532409668\n",
            "epoch: 834 loss: 0.2781999409198761\n",
            "epoch: 835 loss: 0.2780497968196869\n",
            "epoch: 836 loss: 0.277899831533432\n",
            "epoch: 837 loss: 0.27775004506111145\n",
            "epoch: 838 loss: 0.27760064601898193\n",
            "epoch: 839 loss: 0.2774512767791748\n",
            "epoch: 840 loss: 0.27730220556259155\n",
            "epoch: 841 loss: 0.2771534025669098\n",
            "epoch: 842 loss: 0.27700483798980713\n",
            "epoch: 843 loss: 0.27685636281967163\n",
            "epoch: 844 loss: 0.27670830488204956\n",
            "epoch: 845 loss: 0.27656036615371704\n",
            "epoch: 846 loss: 0.2764126658439636\n",
            "epoch: 847 loss: 0.2762651741504669\n",
            "epoch: 848 loss: 0.27611789107322693\n",
            "epoch: 849 loss: 0.27597084641456604\n",
            "epoch: 850 loss: 0.2758239805698395\n",
            "epoch: 851 loss: 0.2756774425506592\n",
            "epoch: 852 loss: 0.2755310535430908\n",
            "epoch: 853 loss: 0.2753848731517792\n",
            "epoch: 854 loss: 0.27523890137672424\n",
            "epoch: 855 loss: 0.2750932276248932\n",
            "epoch: 856 loss: 0.27494776248931885\n",
            "epoch: 857 loss: 0.27480238676071167\n",
            "epoch: 858 loss: 0.27465736865997314\n",
            "epoch: 859 loss: 0.27451249957084656\n",
            "epoch: 860 loss: 0.2743678390979767\n",
            "epoch: 861 loss: 0.2742234170436859\n",
            "epoch: 862 loss: 0.27407917380332947\n",
            "epoch: 863 loss: 0.2739351689815521\n",
            "epoch: 864 loss: 0.2737914025783539\n",
            "epoch: 865 loss: 0.27364787459373474\n",
            "epoch: 866 loss: 0.2735045254230499\n",
            "epoch: 867 loss: 0.27336129546165466\n",
            "epoch: 868 loss: 0.27321842312812805\n",
            "epoch: 869 loss: 0.273075670003891\n",
            "epoch: 870 loss: 0.27293312549591064\n",
            "epoch: 871 loss: 0.2727908194065094\n",
            "epoch: 872 loss: 0.27264878153800964\n",
            "epoch: 873 loss: 0.27250680327415466\n",
            "epoch: 874 loss: 0.27236512303352356\n",
            "epoch: 875 loss: 0.2722237706184387\n",
            "epoch: 876 loss: 0.2720823884010315\n",
            "epoch: 877 loss: 0.2719413638114929\n",
            "epoch: 878 loss: 0.2718004882335663\n",
            "epoch: 879 loss: 0.27165988087654114\n",
            "epoch: 880 loss: 0.27151942253112793\n",
            "epoch: 881 loss: 0.2713792622089386\n",
            "epoch: 882 loss: 0.2712392210960388\n",
            "epoch: 883 loss: 0.271099328994751\n",
            "epoch: 884 loss: 0.2709597647190094\n",
            "epoch: 885 loss: 0.27082037925720215\n",
            "epoch: 886 loss: 0.27068111300468445\n",
            "epoch: 887 loss: 0.2705421447753906\n",
            "epoch: 888 loss: 0.27040329575538635\n",
            "epoch: 889 loss: 0.2702646255493164\n",
            "epoch: 890 loss: 0.27012625336647034\n",
            "epoch: 891 loss: 0.2699880301952362\n",
            "epoch: 892 loss: 0.26985010504722595\n",
            "epoch: 893 loss: 0.2697122395038605\n",
            "epoch: 894 loss: 0.26957467198371887\n",
            "epoch: 895 loss: 0.26943716406822205\n",
            "epoch: 896 loss: 0.2692999839782715\n",
            "epoch: 897 loss: 0.26916295289993286\n",
            "epoch: 898 loss: 0.2690262198448181\n",
            "epoch: 899 loss: 0.26888954639434814\n",
            "epoch: 900 loss: 0.26875317096710205\n",
            "epoch: 901 loss: 0.26861685514450073\n",
            "epoch: 902 loss: 0.2684808671474457\n",
            "epoch: 903 loss: 0.26834505796432495\n",
            "epoch: 904 loss: 0.26820939779281616\n",
            "epoch: 905 loss: 0.2680738866329193\n",
            "epoch: 906 loss: 0.2679387331008911\n",
            "epoch: 907 loss: 0.2678036391735077\n",
            "epoch: 908 loss: 0.26766881346702576\n",
            "epoch: 909 loss: 0.26753419637680054\n",
            "epoch: 910 loss: 0.2673996090888977\n",
            "epoch: 911 loss: 0.26726531982421875\n",
            "epoch: 912 loss: 0.2671312093734741\n",
            "epoch: 913 loss: 0.266997367143631\n",
            "epoch: 914 loss: 0.266863614320755\n",
            "epoch: 915 loss: 0.2667301297187805\n",
            "epoch: 916 loss: 0.26659682393074036\n",
            "epoch: 917 loss: 0.26646360754966736\n",
            "epoch: 918 loss: 0.26633065938949585\n",
            "epoch: 919 loss: 0.26619789004325867\n",
            "epoch: 920 loss: 0.2660652995109558\n",
            "epoch: 921 loss: 0.2659328877925873\n",
            "epoch: 922 loss: 0.26580071449279785\n",
            "epoch: 923 loss: 0.26566869020462036\n",
            "epoch: 924 loss: 0.2655368745326996\n",
            "epoch: 925 loss: 0.26540520787239075\n",
            "epoch: 926 loss: 0.2652737498283386\n",
            "epoch: 927 loss: 0.26514241099357605\n",
            "epoch: 928 loss: 0.26501142978668213\n",
            "epoch: 929 loss: 0.2648804783821106\n",
            "epoch: 930 loss: 0.26474976539611816\n",
            "epoch: 931 loss: 0.26461923122406006\n",
            "epoch: 932 loss: 0.2644888162612915\n",
            "epoch: 933 loss: 0.2643587291240692\n",
            "epoch: 934 loss: 0.2642287015914917\n",
            "epoch: 935 loss: 0.2640989422798157\n",
            "epoch: 936 loss: 0.2639692723751068\n",
            "epoch: 937 loss: 0.26383981108665466\n",
            "epoch: 938 loss: 0.26371052861213684\n",
            "epoch: 939 loss: 0.26358145475387573\n",
            "epoch: 940 loss: 0.26345258951187134\n",
            "epoch: 941 loss: 0.2633238434791565\n",
            "epoch: 942 loss: 0.263195276260376\n",
            "epoch: 943 loss: 0.2630668878555298\n",
            "epoch: 944 loss: 0.2629387676715851\n",
            "epoch: 945 loss: 0.26281073689460754\n",
            "epoch: 946 loss: 0.26268288493156433\n",
            "epoch: 947 loss: 0.2625552713871002\n",
            "epoch: 948 loss: 0.2624277174472809\n",
            "epoch: 949 loss: 0.2623004615306854\n",
            "epoch: 950 loss: 0.2621733546257019\n",
            "epoch: 951 loss: 0.26204633712768555\n",
            "epoch: 952 loss: 0.26191961765289307\n",
            "epoch: 953 loss: 0.2617930471897125\n",
            "epoch: 954 loss: 0.26166656613349915\n",
            "epoch: 955 loss: 0.26154032349586487\n",
            "epoch: 956 loss: 0.2614142596721649\n",
            "epoch: 957 loss: 0.2612883746623993\n",
            "epoch: 958 loss: 0.2611626386642456\n",
            "epoch: 959 loss: 0.26103711128234863\n",
            "epoch: 960 loss: 0.2609117329120636\n",
            "epoch: 961 loss: 0.2607864737510681\n",
            "epoch: 962 loss: 0.26066136360168457\n",
            "epoch: 963 loss: 0.2605365514755249\n",
            "epoch: 964 loss: 0.2604118585586548\n",
            "epoch: 965 loss: 0.2602873146533966\n",
            "epoch: 966 loss: 0.2601628601551056\n",
            "epoch: 967 loss: 0.26003870368003845\n",
            "epoch: 968 loss: 0.259914755821228\n",
            "epoch: 969 loss: 0.2597907781600952\n",
            "epoch: 970 loss: 0.2596670985221863\n",
            "epoch: 971 loss: 0.259543776512146\n",
            "epoch: 972 loss: 0.2594203054904938\n",
            "epoch: 973 loss: 0.2592971920967102\n",
            "epoch: 974 loss: 0.2591741681098938\n",
            "epoch: 975 loss: 0.2590513527393341\n",
            "epoch: 976 loss: 0.2589285969734192\n",
            "epoch: 977 loss: 0.25880616903305054\n",
            "epoch: 978 loss: 0.2586837708950043\n",
            "epoch: 979 loss: 0.2585615813732147\n",
            "epoch: 980 loss: 0.2584395706653595\n",
            "epoch: 981 loss: 0.258317768573761\n",
            "epoch: 982 loss: 0.25819605588912964\n",
            "epoch: 983 loss: 0.25807446241378784\n",
            "epoch: 984 loss: 0.25795313715934753\n",
            "epoch: 985 loss: 0.25783199071884155\n",
            "epoch: 986 loss: 0.25771090388298035\n",
            "epoch: 987 loss: 0.25759005546569824\n",
            "epoch: 988 loss: 0.2574693560600281\n",
            "epoch: 989 loss: 0.25734880566596985\n",
            "epoch: 990 loss: 0.25722837448120117\n",
            "epoch: 991 loss: 0.2571081817150116\n",
            "epoch: 992 loss: 0.25698813796043396\n",
            "epoch: 993 loss: 0.2568681538105011\n",
            "epoch: 994 loss: 0.2567485272884369\n",
            "epoch: 995 loss: 0.2566289007663727\n",
            "epoch: 996 loss: 0.2565094828605652\n",
            "epoch: 997 loss: 0.25639018416404724\n",
            "epoch: 998 loss: 0.2562710642814636\n",
            "epoch: 999 loss: 0.2561522126197815\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "1I9z8spjhfvB",
        "colab_type": "code",
        "outputId": "722284b8-e160-4a3c-f759-59a89cc09379",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 361
        }
      },
      "cell_type": "code",
      "source": [
        "plt.plot(range(epochs), losses)\n",
        "plt.ylabel('Loss')\n",
        "plt.xlabel('epoch')\n",
        "plt.grid()"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfUAAAFYCAYAAABKymUhAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzt3XtclvXh//HXBTcnOSPcqCiKHETx\niEk2jJZhqbVOW6krrW2dtvxW289tjVXUt6+uNmt9q32375ZtZX4XrsjsqGVZzlA8ouIRFBRQuG/k\nIIgcr98fFNOVeLy54Ob9fDz64+Li8n5zPci313V9rs/HME3TRERERHo8D6sDiIiIyMWhUhcREXET\nKnURERE3oVIXERFxEyp1ERERN6FSFxERcRM2qwNcKIfjmNURREREukxEROBp9+lKXURExE2o1EVE\nRNyESl1ERMRNqNRFRETchEpdRETETajURURE3IRKXURExE2o1EVERNyESl1ERMRNqNRFRETchEpd\nRETETajUT1LqqCO/6KjVMURERM6LSv0ky/55gGdf30qpo87qKCIiIudMpX6S1JH9MYHsz/dbHUVE\nROScqdRPMiauL7FRQWzZ56SwrMbqOCIiIudEpX4SwzD43hWxAGR/pqt1ERHpWVTq/2ZYdCgjh4ax\nq7hKg+ZERKRHUal/g++mtV+tv7m6ENM0LU4jIiJydlTq32Bwv0AmJNopOnKMTXscVscRERE5Kyr1\n07gpbSgehsFba/bT2tZmdRwREZEzUqmfRr+wPkwa3Z/Dlcf5YscRq+OIiIickUq9E9enDsHm6cHy\nfx6guaXV6jgiIiKdUql3IizIl6vGR1FZ28inW8qsjiMiItIpl5b6ggULmDFjBjNnzmTbtm2n7Dt8\n+DCzZs3ie9/7Ho899thZHWOFay8bgp+PJ+9+UcTxE81WxxERETktl5V6bm4uxcXFZGVlMX/+fObP\nn3/K/qeeeoof/vCHvPHGG3h6elJWVnbGY6wQ4OfFtZcNoa6hmfdyiq2OIyIiclouK/WcnBzS09MB\niI2Npaamhrq69oVS2tra2LRpE5MnTwYgMzOTAQMGdHqMldLHDyQsyIePNpbgrGmwOo6IiMg3clmp\nO51OQkNDO7bDwsJwONrf+T569Cj+/v785je/YdasWTzzzDNnPMZK3l6efDctlpbWNi32IiIi3VaX\nDZQ7eWY20zQpLy9nzpw5vPbaa+zcuZPVq1d3eozVLk2KZHBkIOvyyyk6Umt1HBERka9xWanb7Xac\nTmfHdkVFBREREQCEhoYyYMAAoqOj8fT05LLLLmPfvn2dHmM1D8Pg1ivbp49d+klBt/oHh4iICLiw\n1FNTU1mxYgUA+fn52O12AgICALDZbAwaNIiioqKO/TExMZ0e0x0MHxLGmNi+7D5YTV5hpdVxRERE\nTmFz1R+cnJxMUlISM2fOxDAMMjMzyc7OJjAwkClTppCRkcHDDz+MaZokJCQwefJkPDw8vnZMd/O9\nK+PYtr+Sf3xawKihYXh66FV/ERHpHgyzh99HdjiOdflnvvrhblZvLWP2NcO4clxUl3++iIj0XhER\ngafdp8vM83DDpBh8vDx5e81+GhpbrI4jIiICqNTPS3CAD9MmRlN7vJn312lCGhER6R5U6ufpmpRo\nwoJ8WJF7kIpqTUgjIiLWU6mfJx8vT269Mo6WVpOlnxRYHUdERESlfiEmJNqJHxjM5r0OdhYdtTqO\niIj0cir1C2AYBt9PT8AA/v7xPlrb2qyOJCIivZhK/QIN7hfI5WMGUOqsZ7XWXBcREQup1C+Cm9OG\n4ufjybI1+6lr0JrrIiJiDZX6RRDk7831qTHUn2hh2Rqt4iYiItZQqV8kV40fSL+wPny6pZSSCuvX\ngBcRkd5HpX6R2Dw9mHlVPKYJf1+1T6u4iYhIl1OpX0SjY/syOrYvu4qr2LC7wuo4IiLSy6jUL7JZ\n6fHYPD14fdU+zQsvIiJdSqV+kUWG9mH6xGiq65pYvvaA1XFERKQXUam7wPSJgwkP9uWjDSWUODRo\nTkREuoZK3QW8vTy5bUoCbabJayv3atCciIh0CZW6i4yJC2dcfDh7D1WTk3/E6jgiItILqNRdaFZ6\nPN42D5Z+UsDxE5ppTkREXEul7kLhwX58J3UItcebyf5cM82JiIhrqdRd7JqU6I6Z5oqPHLM6joiI\nuDGVuovZPD24/eoETBNeXbGbtjYNmhMREddQqXeBEUPCmDgikgOHj7Fqc4nVcURExE2p1LvIzKvi\n8fe1kf3ZfiprTlgdR0RE3JBKvYsE+XszY3I8jc2tvLZyj95dFxGRi06l3oVSR/UjMTqEvMJKNu5x\nWB1HRETcjEq9CxmGwR1TE7F5erDko73U6911ERG5iFTqXSwyrA83TBpCbX0T//i00Oo4IiLiRlTq\nFrgmJZqoCH8+zytjz8Eqq+OIiIibMEwXjthasGABeXl5GIZBRkYGo0eP7tg3efJk+vXrh6enJwAL\nFy6kqKiIBx98kPj4eAASEhJ49NFHO/0Mh6NnTuhSWFrDgsWbiAzrwxM/TMHLpn9fiYjImUVEBJ52\nn81VH5qbm0txcTFZWVkUFhaSkZFBVlbWKd/zl7/8BX9//47toqIiUlJSeP75510Vq9uIjQpmcvJA\nVm0u4Z0vDnBzWqzVkUREpIdz2eVhTk4O6enpAMTGxlJTU0NdndYWP9nNVwylb5Av7+cc1BSyIiJy\nwVxW6k6nk9DQ0I7tsLAwHI5TX+PKzMxk1qxZLFy4sOO97YKCAu677z5mzZrF2rVrXRWvW/DzsXHn\ntETaTJNF7+2ipbXN6kgiItKDuez2+7/790f3DzzwAJdffjnBwcHcf//9rFixgnHjxjF37lymTZvG\noUOHmDNnDitXrsTb27urYna5pJgw0sYM4PO8Mt79oogbLx9qdSQREemhXHalbrfbcTqdHdsVFRVE\nRER0bN9444307dsXm81GWloae/fuJTIykunTp2MYBtHR0YSHh1NeXu6qiN3GjMlxhAX58F5OMQfL\ndRteRETOj8tKPTU1lRUrVgCQn5+P3W4nICAAgGPHjvGjH/2IpqYmADZs2EB8fDzLly9n0aJFADgc\nDiorK4mMjHRVxG7Dz8fGnVMTaW0zeVm34UVE5Dy57PZ7cnIySUlJzJw5E8MwyMzMJDs7m8DAQKZM\nmUJaWhozZszAx8eHESNGMHXqVOrr65k3bx6rVq2iubmZxx9/3K1vvZ9s5NC+XD66P2u2Heb9dcVc\nnxpjdSQREelhXPqeelfoqe+pf5PjJ1p4dNF6auubeOzOCQyyB1gdSUREupnO3lPXjCfdSB9fG3dM\nHabb8CIicl5U6t3M6NhwUkf1o7j8GO9+UWR1HBER6UFU6t3QrKsS6Bvkw7tfFFNYVmN1HBER6SFU\n6t1QH18bP7p2BKZp8tI7O2lsarU6koiI9AAq9W4qcXAoV6cMoryqgaWfFlgdR0REegCVejd2c9pQ\noiL8+XRLKdsKK62OIyIi3ZxKvRvzsnly93Uj8PQw+Ov7u6hraLY6koiIdGMq9W4uOjKQm9KGUlPf\nxKsf7v7aHPoiIiJfUan3AFNTookfGMzGPQ7W5bv/XPgiInJ+VOo9gIeHwY+uG4GPtyevfbQHZ02D\n1ZFERKQbUqn3EPYQP76fHk9DYyt/Xr6T1jbNNiciIqdSqfcgk0b1J2W4nYLSGpb/s8jqOCIi0s2o\n1HsQwzCYc80wwoN9efeLInYXV1kdSUREuhGVeg/Tx9eLe65PwjAM/vLuTr3mJiIiHVTqPVBcVDA3\nXh5D1bFGXn5vl15zExERQKXeY02fOJjE6BC2Fjj5ZHOp1XFERKQbUKn3UB4eBnd/J4kAPy+yPing\nUEWd1ZFERMRiKvUeLDTQhx9eO5yW1jb+9PYOGpu1mpuISG+mUu/hxsaFkz5+IIcrj/Payj1WxxER\nEQup1N3ALVfGMaRfIGu3H2FNXpnVcURExCIqdTfgZfPgxzeOpI+Pjdc+2svB8mNWRxIREQuo1N1E\nRIgfd103guaWNv64bAcNjS1WRxIRkS6mUncjY+PDmXZpNOVVDfz1fb2/LiLS26jU3czNVwwl4ctl\nWj/eVGJ1HBER6UIqdTfj6eHBvTeMJLCPF0s/KaCwrMbqSCIi0kVU6m4oNNCHe65Poq3N5I/LdnDs\neJPVkUREpAuo1N1U0pAwbpgUw9HaRv53eb7WXxcR6QVU6m7sutQhjInty86iKrI/2291HBERcTGV\nuhvzMAzu/s4IIkP9+GD9QXJ3lVsdSUREXMgwXfje04IFC8jLy8MwDDIyMhg9enTHvsmTJ9OvXz88\nPT0BWLhwIZGRkZ0e800cDk20cialznr+69WNmKbJI7MvYaA9wOpIIiJyniIiAk+7z+aqD83NzaW4\nuJisrCwKCwvJyMggKyvrlO/5y1/+gr+//zkdI+cuKtyfu64dzh/e2sEL2dt49I4JBPh5WR1LREQu\nMpfdfs/JySE9PR2A2NhYampqqKvrfHnQ8zlGzs74YXauvWwwjuoT/PmdfNraNDGNiIi7cVmpO51O\nQkNDO7bDwsJwOBynfE9mZiazZs1i4cKFmKZ5VsfI+bvp8qGMHBrGjv1HeWuNBs6JiLibLhso9++P\n7h944AF+9atfsXjxYvbt28eKFSvOeIxcGA8Pg3uvTyIixJf3corZuLvC6kgiInIRuazU7XY7Tqez\nY7uiooKIiIiO7RtvvJG+fftis9lIS0tj7969ZzxGLpy/rxf/cfNofLw8eendnRQf0UBDERF34bJS\nT01N7bj6zs/Px263ExDQPur62LFj/OhHP6KpqX2msw0bNhAfH9/pMXLxDLQHcM/17Su6Pf/mNqrr\nGq2OJCIiF4HLRr8nJyeTlJTEzJkzMQyDzMxMsrOzCQwMZMqUKaSlpTFjxgx8fHwYMWIEU6dOxTCM\nrx0jrjEuPoLvfTuWf6wu5IU3t/HL7yfj7eVpdSwREbkALn1PvSvoPfXzZ5omL7+3i7U7jpAy3M69\n1ydhGIbVsUREpBOdvaeuGeV6McMwmDM1kbiBweTuquCdtUVWRxIRkQugUu/lvGwezL15FOHBviz7\n5wFNJSsi0oOp1IWgPt488L3R+Hh7sui9XRw4XGt1JBEROQ8qdQFgYEQA916fRMuXI+Ira05YHUlE\nRM6RSl06jI0LZ8bkOGrqmnjuH3kcP9FsdSQRETkHKnU5xZQJg7hq/EBKnfX84a0dtLS2WR1JRETO\nkkpdTmEYBrOuimdcfDi7iqv46/u7NV2viEgPoVKXr/HwMLjn+iSGDggiJ/8Iy9YcsDqSiIicBZW6\nfCMfL08e+N5o7CF+vPNFEZ/nlVkdSUREzkClLqcV1Mebh24dQ4CfF69+uIcd+yutjiQiIp1QqUun\n+oX14YHvjsbDw+APy3ZoVTcRkW5MpS5nFDcwmHu+M4KmplZ+v3Qr5VXHrY4kIiLfQKUuZ+WSRDu3\nX51A7fFmnnl9q5ZrFRHphlTqctauTB7IDZNicNac4NmsrZqcRkSkm1Gpyzm5PnUIVyUPpMRRz3+/\nsY3G5larI4mIyJdU6nJODMNg1pR4Uobb2VdSw5+WadY5EZHuQqUu58zDMLjruhEkxYSRV1jJ3z7Y\nTZtmnRMRsZxKXc6LzdOD+28aydABQXyx4whLPynQdLIiIhZTqct58/W28dAtY+jftw8rNxzi7X9q\nOlkRESup1OWCBPh5MW/mOCJCfFm+togP1hVbHUlEpNdSqcsFCw304eczxxEa6MM/VheyalOJ1ZFE\nRHollbpcFOEhfvxi1jiC/b1Z8tFeLQAjImIBlbpcNJFhfZg3cywBfl688sFu1uUfsTqSiEivolKX\niyoqIoD/N2Msvj42Xnp3F5v2OKyOJCLSa6jU5aIb3C+Qn906Bi8vD/709g7yCpxWRxIR6RVU6uIS\nsVHBPPS90Xh6GPzhre1sVbGLiLicSl1cZlh0KA/eMgYPw+AP2dvZuk/FLiLiSip1canhg0N56JYx\neHq2X7Fv2adn7CIiruLSUl+wYAEzZsxg5syZbNu27Ru/55lnnmH27NkArF+/nokTJzJ79mxmz57N\nk08+6cp40kUSB4fy0y+L/X/e2sGWvSp2ERFXsLnqD87NzaW4uJisrCwKCwvJyMggKyvrlO8pKChg\nw4YNeHl5dXwtJSWF559/3lWxxCLDotuL/bl/bON/lu3gvhtGMn5YhNWxRETcisuu1HNyckhPTwcg\nNjaWmpoa6urqTvmep556ip/+9KeuiiDdzLDoUH566xhsnu2j4jftqbA6koiIW3FZqTudTkJDQzu2\nw8LCcDj+dds1OzublJQUoqKiTjmuoKCA++67j1mzZrF27VpXxROLJAwKaS92mwd/ejuf3F3lVkcS\nEXEbZ1XqO3bs4NNPPwXg97//PXfccQcbN248pw86eVnO6upqsrOz+cEPfnDK9wwZMoS5c+fyxz/+\nkaeffppf//rXNDU1ndPnSPeXMCik/T12mwf/uzyfNds0payIyMVwVqX+X//1X8TExLBx40a2b9/O\no48+esbn3na7HafzX68wVVRUEBHR/gx13bp1HD16lNtuu425c+eSn5/PggULiIyMZPr06RiGQXR0\nNOHh4ZSX60rOHcUPDOHns8bRx8fGX9/fzccbD1kdSUSkxzurUvfx8WHIkCGsWrWKW2+9lbi4ODw8\nOj80NTWVFStWAJCfn4/dbicgIACAqVOn8v7777N06VJefPFFkpKSyMjIYPny5SxatAgAh8NBZWUl\nkZGRF/LzSTcW0z+IX96WTJC/N//38T7eyymyOpKISI92VqPfGxoa+OCDD/j444+5//77qa6upra2\nttNjkpOTSUpKYubMmRiGQWZmJtnZ2QQGBjJlypRvPGby5MnMmzePVatW0dzczOOPP463t/e5/1TS\nYwyMCOBXtyWz8PUtvPnZfhoaW/nuFUMxDMPqaCIiPY5hnvyw+zTWrVvHq6++ynXXXcf06dN54YUX\nGDx4MNdff31XZOyUw3HM6ghyEVTWnGDh61sor2rgquSBzJoSj4eKXUTkayIiAk+776xKHaCuro6A\ngACcTidFRUUkJyef8RZ8V1Cpu4+aukaeydpKiaOe1FH9uHNaIp7d4HdMRKQ76azUPR9//PHHz/QH\nPPnkk1RXVxMVFcWtt97KkSNHyMnJ4corr7yYOc/L8eMaHe8ufL1tTBgeye6D1WwrrKSkoo5x8eF4\neqrYRUS+4u/vc9p9Z/W35c6dO7nlllv44IMPuOmmm3juuecoLi6+aAFFvhLg58W8mWMZMSSULfuc\n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\n",
            "text/plain": [
              "<matplotlib.figure.Figure at 0x7fae9c2a65c0>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "mGARbKBEqXql",
        "colab_type": "code",
        "outputId": "a3698f8d-3490-42fa-aee4-4765318a5600",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 347
        }
      },
      "cell_type": "code",
      "source": [
        "plot_fit(\"Trained Model\")\n"
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAecAAAFKCAYAAAAnj5dkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzs3Xd8U/X6B/BPRpM0TdomkDJEr8pw\nlCHIFClSW0FRUKBWFEXEASLLgsrwgqIoyB6CIi4clwviz4GKlwsIShEFZNRRhsoSSNu0TZp9cn5/\n1Pa2NM08yRl53vd1Xy/TE3Keb06bJ893HRnLsiwIIYQQIhhyvgMghBBCSH2UnAkhhBCBoeRMCCGE\nCAwlZ0IIIURgKDkTQgghAkPJmRBCCBEYJd8B1DCbrZy+nsGghcVi5/Q1+UJtESaptEUq7QCoLUIk\nlXYA3LfFZNI3ekyylbNSqeA7BM5QW4RJKm2RSjsAaosQSaUdQHzbItnkTAghhIgVJWdCCCFEYCg5\nE0IIIQJDyZkQQggRGErOhBBCiMBEtZRq/vz52LdvH7xeLx577DHccssttcd2796NRYsWQaFQICsr\nC+PGjYs6WEIIISQRRJyc9+zZg6NHj2L9+vWwWCy466676iXnF154AWvXrkWzZs0wYsQI9O/fH23a\ntOEkaEIIIUTKIk7O3bp1Q8eOHQEAqampcDgcYBgGCoUCp06dQlpaGlq0aAEA6Nu3LwoLCyk5E0II\nISGIeMxZoVBAq9UCADZu3IisrCwoFNULtM1mM4xGY+1zjUYjzGZzlKESQgghiSHq7Tu3bt2KjRs3\n4s0334zqdQwGLee7rwTaGk1sqC3CJJW2SKUdALVFiKTSDiB+bYkqOe/atQurV6/GG2+8Ab3+fwFn\nZGSgpKSk9vH58+eRkZER8LW43nvVZNJzvl83X6gtwiSVtkilHQC1RYik0g7FkcMwVpXB3KMvZ68Z\nk721rVYr5s+fj9deew3p6en1jrVq1Qo2mw2nT5+G1+vF9u3b0bt370hPRQghhPDD5YJ27vMw5GYB\n994L+HxxOW3ElfMXX3wBi8WCSZMm1f6sR48euOqqq5Cbm4vZs2ejoKAAAHDbbbfhiiuuiD5aQggh\nJE6UBw9AP2EslL/8DObSy6B49x1AHp/tQSJOzvn5+cjPz2/0eLdu3bB+/fpIX54QQgjhh9sN7aJ5\n0C5dBBnDwDFyNKpmPY+mV7QE4tRFL5j7ORNCCCF8Ux4+CP34sVD+fARMq0thXbwCnr794h4Hbd9J\nCCGEuN3QznsR6f37QfnzETjuHwXLN4W8JGaAKmdCCCEJTnHkMFLHj4Gy6DCYS1rBumg5PP1u5jUm\nqpwJIYQkJo8H2gUvw3BLXyiLDsNx3wPV1TLPiRmgypkQQkgCUvxcBP34MUg6fBBMi5awLl4OT3Yu\n32HVosqZEEJI4vB6oV38Cgy5WUg6fBCO4SNg2blHUIkZoMqZEEJIglD88jP0E8Yi6eABMM1bwLZo\nGdw5/fkOyy+qnAkhhEib14vkpQurq+WDB+DMvxeWnXsEm5gBqpwJIYRImOK3X6GfMAZJB/aDadYc\ntoVL4b7lVr7DCooqZ0IIIdLj9SJ52WIYbr4RSQf2wzksv7paFkFiBqhyJoQQIjGKo8XV1fK+H+Ez\nZaBywVK4bx3Id1hhocqZEEKINDAMklcshSG7N5L2/QjnkDyU7fpedIkZoMqZEEKIBCiOHa2eif3j\nXviamlC5egncA+/gO6yIUeVMCCFEvBgGyatWVFfLP+6F866hKNu1V9SJGaDKmRBCiEgpThyDfsLj\nSNq7B76mTVG5cg3cdwzmOyxOUOVMCCFEXHw+JL+2EoZ+vZG0dw+cg+5C2c69kknMAFXOhBBCRER+\n4jj0k8ZBtWc3fE2awLpsFVyDh/AdFueociaEECJ8Ph80b6yGsd8NUO3ZDdftg1G2c68kEzNAlTMh\nhBCBk//xe3W1vPtb+AwGWJeshOvOoYBMxndoMUOVMyGEEGHy+aBZ+zqMN90A1e5v4br19upq+a5h\nkk7MAFXOhBBCBEj+5x/V1fJ3u+BLT4d14RtwDcmTfFKuQcmZEEKIcPh80LzzJnTPPQuZvQquAbfB\n9soS+Jo15zuyuKLkTAghRBDkp05CP+kJqHbtgC8tHdaVr8M1LD9hquW6KDkTQgjhF8tC8+5bSJk9\nE/IqG1y3DIBtwVL4mrfgOzLeUHImhBDCG/npU9BPfgKqb7bDl5qGymWr4Mq/NyGr5bqiSs7FxcV4\n/PHH8eCDD2LEiBH1jmVnZ6N58+ZQKBQAgAULFqBZs2bRnI4QQohUsCw077+LlH9Oh9xmhevmXNgW\nLYevRUu+IxOEiJOz3W7HnDlz0KtXr0afs2bNGqSkpER6CkIIIRIkP3umulre/l/49KmoXPoqXPfc\nl/DVcl0Rr3NWqVRYs2YNMjIyuIyHEEKIVLEs1B++B0OfHlBt/y/c/W6GZeceuIaPoMR8kYgrZ6VS\nCaUy8D+fNWsWzpw5g+uvvx4FBQWQ0ZtPCCEJSf7XWegKJkC99Wv4dHpYFy2H874HKCk3ImYTwiZM\nmIA+ffogLS0N48aNw5YtWzBgwIBGn28waKFUKjiNwWTSc/p6fKK2CJNU2iKVdgDUFsFhWZi+2ARM\nnAhUVAC5uZC/8Qb0l10GMbYuXtckZsn5zjvvrP3vrKwsFBcXB0zOFoud0/ObTHqYzVZOX5Mv1BZh\nkkpbpNIOgNoiNPJzf6HJtCeBzZvhS9GhasFSOO9/sLpaFmHbuL4mgRJ9TPbWtlqtGD16NNxuNwDg\nhx9+QNu2bWNxKkIIIULDslD/+0MY+vQANm+Gu89NsOzcA+cDo6gbO0QRV85HjhzBvHnzcObMGSiV\nSmzZsgXZ2dlo1aoVcnNzkZWVhfz8fKjValx77bUBq2ZCCHdcHgYVNhfSdGqok7gdKiIkGPn5c9BN\nnQT1V1+A1aYAq1ahYgitWw5XxMm5ffv2WLduXaPHR44ciZEjR0b68oSQMDE+H9ZvO4YDxWaUVbpg\nTFWjczsT8rPbQCEX3w3o6EuGyLAs1B/9G7rpUyEvL4f7xixYF69Ak64dRNmFzTfaIYwQiVi/7Ri2\n/ni69nFppav28b057fgKK2xS+5KRCGQXLkA/dRLUX34OVquF9aUFcI56GKDrFTF65wiRAJeHwYFi\ns99jB4pL4PIwcY4ocjVfMkorXWDxvy8Z67cd4zs0cjGWhfrjjTBmdYf6y8/hvuFGlO0ohHP0o5SY\no0TvHiESUGFzoazS5feYxepEhc3/MaGR0pcMqZOZzUgd/QBSH3sIMocD1rnzUbHpc/guv4Lv0CSB\nkjMhEpCmU8OYqvZ7zKDXIE3n/5jQSOVLhtSpP9lUXS1//gk8PXqhbPtuOB8eQ9Uyh+idJEQC1EkK\ndG5n8nusc7umoplQJZUvGVIlKymB/uGRSH3kQcjsdtjmvITyT76E78rWfIcmOTQhjBCJyM9uA6C6\n+9didcKg16Bzu6a1PxeDmi8ZdSe21RDTlwwpUn32CfRPT4a8pASe7j1hXfYqmCvF87slNpScCZEI\nhVyOe3PaYWjf1qJegiSFLxlSIisthW5aATT/twmsRgPbc3PheHQsoBDf75aYUHImRGLUSQpkGLR8\nhxExqXzJkALV5s+gnzoJ8hIzPNd3g3X5ajBtaLfHeKDkTAgRJLF/yRAzWVkpdNOnQrNpI1i1GrZZ\nL8AxZhxVy3FEyZkQQkgt1ZeboZ8yEXLzBXiu7wrrstVg2opnExupoORMCCEEMksZdDOehmbjerAq\nFWzPPg/H2CcAJaUJPtC7TogE0D7UJBqqr7+ErmAiFOfPwdO5S3W1fNXVfIeV0Cg5EyJitA81iYas\n3ALdzGeg+feHYJOSYJsxC45xE6laFgC6AoSImFRudkHiT7V1C3RPToDi3F/wdOoM67JVYK65lu+w\nyN/oqzWRJJeHwQWLXdJ7MdM+1CQSsopy6CY+jrR78yAvLUHVtGdR/sVWSswCQ5UzkZRE6uYNZR9q\nWopE6kra9h/oJ4+H4q+z8HToVF0tZ7bnOyzih7Q+rUjCS6TbDdI+1CRUssoK6CY/gfR7hkJuvoCq\np6aj/KttlJgFjJIzkYxE6+aVys0uSGwlbf8vDFk9kfz+u/C07wjL19/APuUZICmJ79BIANStTSRD\n6t28/pZL0T7UpDEyayVSZs9E8rq3wSqVqJryDOyTpgAqFd+hkRBQciaSUdPNW+onQYu5mzfYODrt\nQ00ulvTNdugnPwHF6VPwXpMJ64rV8HboxHdYJAzUrU0kQ6rdvKGMo9fsQy3WNhJuyGxW6KZORnre\nYMj/OouqJ5+C5T/fUGIWIaqciaRIrZs32Dj60L6tKSETAEDSrm+qq+WTf8J79TWwLl8Nb6fOfIdF\nIkTJmUiK1Lp5pT6OTjhgs0E3559IfusNsAoFqiZNgb3gaUAtzmEcUo2SM5EkqdxuUKrj6IQbSbu/\nhX7C41Cc/APeq66GddkqeDtfz3dYhAM05kyIgEl1HJ1EqaoKKdOnIv3O2yA/fRL2CU/C8p+dlJgl\nJKrkXFxcjJycHLz33nsNju3evRvDhg1Dfn4+Vq5cGc1pCElo+dltkNO1FZqkaiCXAU1SNcjp2kq0\n4+gkOkmF38HY7wZo33gN3rbtUL75P6iaORvQaPgOjXAo4m5tu92OOXPmoFevXn6Pv/DCC1i7di2a\nNWuGESNGoH///mjThj5MSHjEeCtErmOW2jg6iZDdjpS5zyF5zWpAJoN93ERUPT2DkrJERZycVSoV\n1qxZgzVr1jQ4durUKaSlpaFFixYAgL59+6KwsJCSMwmZGPfIjnXMUhlHJ+FT7imEfuJYKH8/AW+b\nttVjy1278x0WiaGIk7NSqYSykXt+ms1mGI3G2sdGoxGnTp0K+HoGgxZKJbfVgMmk5/T1+JRobVnz\nf4f93gpRm6zCI3d2iGV4YanbFrHE7E+i/X6JhUmnBGbOBBYvrv5BQQGUc+bAkJzMb2BhktQ1iVNb\nBDNb22Kxc/p6JpMeZrOV09fkS6K1xeVh8N3BM36PfXfwLG7tfqkgunX1ack4/kdp7YxpMcTsT6jX\nRAxd6pL6Wzl6GN4HRkJ5/Bi8V7aGdekqeHv0BGxewCaeNkrqmnDclkCJPibJOSMjAyUlJbWPz58/\nj4yMjFicigQglg/Ui8VzbW8k71FN9/Wh46UwWxwwpqpx9WUGv8udYhFzPIlxeEH0HA6kzHsRWLUc\nCgD2x8ahatqzgFZ8vz8kcjFJzq1atYLNZsPp06fRvHlzbN++HQsWLIjFqYgfYvtAvThBxmNtbzTv\nUc12mjVKK1347sg5aFRyON2+mMXMB39trXl8b047vsKSLOWPe6GfMBbKY0eBNm1QvmglvD39T7ol\n0hZxcj5y5AjmzZuHM2fOQKlUYsuWLcjOzkarVq2Qm5uL2bNno6CgAABw22234YorruAsaBKYWD5Q\nAyXIzu1M9dpQg6u1vZG+R4G20wRkfn8q1vXItHVoHDmdSJk/F8mvLoPM54P90bHQLl4Ab5W0bnNK\nQhdxcm7fvj3WrVvX6PFu3bph/fr1kb48iZCYPlADJchY7pEdzXsUqMvd7WFwQ/vm+O1kuST29aat\nQ+NDeWAf9OPHQFn8G5h/XA7r0lfhueFGaLVaoEoaY7UkfIKZEEa4IZYP1FASZKzW9kbzHgXrcr+/\n/1W15xDbWP/FaOvQGHO5kPLKS0hesQQynw+O0Y/CNvM5ICWF78iIAAhvAJJEpeYD1R8hfaCGkiCB\n2NwKMZr3KJTtNKVy+0baOjR2lD/thyE3C9pli+BrdSnKN30O20sLKDGTWpScJUYsH6h8fomI9j2q\n2U4zw5As6e00XR4G/Tpfgn6dWwbcOtTlYXDBYofLQ+OjQblc0L70PNJvvRnKX3+BY9TDKNtRCM+N\nWXxHRgSGurUlSAz3NK5JkJFO+op2mVg071HNdpqPDf3fOmehfOnhgr+Jeh3bNEXO9a1gTNXUtlVs\nqwL4pjz0U/XY8i8/g7n0MliXrISnT1++wyICRclZgsSyF3MkCZKrhMDFe6RRKQUxfs81fxP1tu8/\nA4VcVm8mu1hWBfDO7YZ20Xxoly6EjGHgeOAhVM2eA1YnnV2zCPcoOUuY0PdijiRBcp0QhP4exVuo\nM9nFtCqAT4rDh5A6fgyUPx8Bc0krWBevgOembL7DIiJAfU+Ed6FOoAqWEOI55unyMPirpEpy46yh\nTtQL9XkJy+OB9pWXYOh/E5Q/H4Hj/gdh2bmHEjMJGVXORDSEsEysXre61QWjXlrjrKEun6JlVo1T\nHDkM/YSxSDpyCEzLS2BdtBye7By+wyIiI/5PE5IwhLBMrKZbvbTSBZb9X7f6+m3HYn7ueAh1JrtY\nVgXElccD7cJ5MPS/CUlHDsFx7/3V1TIlZhIBSs5ENLhMCJEs/xFSt3os1SwVC7R8KpznJQLFz0VI\nv/VmpMx7Eb6mJlR8uBG2JSvBpqbxHRoRKerWJqIS7TKxaGZ7C6FbPR5CnagnllUBMeX1Qrt8MbQL\nXobM44Hznvtgm/MS2LR0viMjIkfJmYhKtAkhmtneiTbOGupM9kSd8a749RfoJ4xB0k8HwDRrDtui\nZXDnDuA7LCIR1K1NRCmSLTKj7ZamcVYCAPB6kbxsEQw5fZD00wE47x4Oy67vKTETTlHlTBIGF93S\nYth9LVFEu0tcJBS//Qr9xLFI2r8PTEYz2BYug7v/rXE5N0kslJxJwuCiW7put7pClQTG7RFkxcxH\n4oqXQPMGYndSBsmvLkfK/Bchc7ngHHo3bHPngzUYY3dOktAoOZOEEe1+3he/lqlpCsxmYd1vNxH2\nuw40b2Di8Os5P5/iaHH1uuV9P8BnykDlgqVw3zqQ8/MQUhclZ5JQpN4tLfX9roPNG3C6vdydjGGQ\n/NqrSHnp+epqecgw2Oa+AtbYhLtzENIISs5EFLjqppXy8p9E2O862LwBS6WLkw81xfGj0E94HEk/\nfA9f06aoXLUW7tsHcfDKhISGkjMRtFh100px+U8irMMONm/AkKqGtcIR+QkYBslrViFl7vOQOZ1w\n3jkEtpcWgm1C1TKJL2kMQhFRCWd3rnrbZUJ622VySQjbm8ZasOVsGlXk9YbixDGkD74Vun9OB5uS\ngoq178L6+tuUmAkvqHImccP4fFjzf4fx3cEzIVXBidBNyyUuJ7zFWzjDFpzPG/D5kPzGaqS8+Bxk\nDgdcd9wJ68sLwZr8fwkgJB4oOZO4CXeyUiJ003JNbBPeIhm24HLegPz3E9BPGgdV4XfwGY2wLlsF\n1+Ah0TSJEE5QciZxEUkVnGjbZXJBbBPeopldHtW8AZ8Pmjdfh+6F2ZDZ7XDddges8xeDzcgI62Xc\njBsVLivS1HqoFKrIYiHED0rOJC4iqYLF3E3LNzFMeONr2EL+x+/V1fLub+EzGGBdtByuu4YBMlnI\nr8H4GGw6thmHzEWwuMphUKejoykTQ9oMhEJOv5ckepScSVxEWgWLrZuWhC7uwxY+HzRvr4Xu+X9C\nZq+Ca8BAWF9ZArZZs7BfatOxzdhx+tvax2UuS+3jvHa05IpEL+LkPHfuXBw8eBAymQzTp09Hx44d\na49lZ2ejefPmUCiqv0EuWLAAzSL4AyDSEWkVLLZu2kCkvKVmJOI5bCE/+Sf0k5+Aatc38KWnw7pg\nDVxD7w6rWq7hZtw4ZC7ye+xwSREGtx5AXdwkahEl57179+LPP//E+vXrcfz4cUyfPh3r16+v95w1\na9YgJSWFkyCJNORnt4E2WYXvDp4NuwoWQzdtYxJhS81IxGXYgmWhefctpMyeCXmVDa7+t8K2YCl8\nzZpH/JIVLissrnK/x8qc5ahwWWHS0vIrEp2IknNhYSFycnIAAK1bt0ZFRQVsNht0Oh2nwRFpUcjl\neOTODri1+6WcV5BCrkqlvqVmNGI5bCE/dRL6yeOh2rkdvrR0VC5fDdfdwyOqlutKU+thUKejzGVp\ncMyoSUeaWh/V6xMCRJicS0pKkJmZWfvYaDTCbDbXS86zZs3CmTNncP3116OgoACyIH8QBoMWSiW3\nH6omk3T+SKTUllYt09GKo9diGB/e/KwIe478BXO5A6b0ZPRs3wIP3ZEJhcJ/Vep0e2GpdMGQqo5q\n0wog+HVxur04dLzU77FDx0vx2NDkqGPgAp+/XxOHX8/tNWmqA954AygoAKxWYOBAyF9/HaktW3IU\nMdDzH9fhi+LtDX7e47LrcElz7qpmqfzdS6UdQPzawsmnAsuy9R5PmDABffr0QVpaGsaNG4ctW7Zg\nwIDANyK3WOxchFLLZNIL7o5BkaK2NO6DrcX1qtILFgc+3XUCdoe7QVXKdfdyKG25YLHDbPG/nWRJ\nuQPH/yjlrLs+0t4Dofx+KQFYKxyIJhKTsxzuBx6Easc2+FLTYFu2Cq78e6urZQ7bOKDlLbDbPThc\nUoQyZzmMmnR0aJqJAS1v4ey9FMp1iZZU2gFw35ZAiT6i5JyRkYGSkpLaxxcuXICpzm46d955Z+1/\nZ2Vlobi4OGhyJiRc4S7F4aN7OR6TnmhMG9Vjyx+sA2ZNh6qyEu7sHFgXLYev5SUxOZ1CrkBeu0EY\n3HoArXMmMRHRX27v3r2xZcsWAEBRUREyMjJqu7StVitGjx4Nt9sNAPjhhx/Qtm1bjsIl5H9CWYpT\nI1giD2Wf74s53d6ge4QH2wuai/HxRN9/XH72DNKGD4V+8hMAAOuSlaj48KOYJea6VAoVTNomlJgJ\n5yKqnLt06YLMzEzcc889kMlkmDVrFjZt2gS9Xo/c3FxkZWUhPz8farUa1157LVXNJCbCqUq5XFNb\nU6keOl4Ks8URtFKN5aSnhN5/nGWh/tf70D07DfLKCrhvyobq3bfh1KTzHRkhUYt4zHnKlCn1Hl99\n9dW1/z1y5EiMHDky8qgICUE4S3G47F4Ot3s8lmu1E3X/cflfZ6ErmAD11q/h0+lhXbQczvsegCkj\nldOxZUL4kiADUkSq8rPbIKdrKzRJ1UAuA5qkapDTtVWDqpSr7uVousdr1mpzWckmwm0i62FZqNd/\nAENWT6i3fg13Vj9Ydu6Bc8TIqJdIESIk/K/hICQK4VSlXHQvc1GpcrkmO5H2H5efPwfdlIlQb/kS\nvhQdrK8sgfOBUZSUiSRRchYRIW+0wbdQdhBTyOUY2rc1sjq1BFgWpgiq2Gi6x2M1q1ry+4+zLNQb\n10M34ynIy8vh7tMX1sUr4LvsH3xHRkjMUHIWAYbx4YOtxYm9VCZKXCXGaCrVWC3lktL+4xeTnT8P\n/dRJUH+1Gaw2BdZ5i+Ac+RBAv/dE4ig5i8CbnxXR9o9R4jIx1lSkh46XoqTcEVKlGo9Z1WLef7wB\nloX6443QTZsCucUCd+8+sC5ZCd8/Luc7MkLigpKzwLk8DPYc+cvvMckvleEI14mxplJ9bGgyjv9R\nGlKlmqizqiMhu3AB+qcmQ/3FZ2C1WlhfegXOUY9QtUwSCv22C1yFzQVzuf/tHy/eaIP4F85mJeHQ\nqJQhz75OuFnVkWBZqP/vIxizukP9xWdw9+qNsu274Rz9GCVmknDoN17g0nRqmNKT/R4T24e6y8Pg\nr5KqiHbjioYQEmM8dgoTM5nZjNTRDyD10VGQORywvTgPFR9vhu+KK/kOjRBeULe2wKmTFOjZvgU+\n3XWiwTGxfKjXm4xldcGoj++ENqEsNxLzrOpYrhRQffox9E8/CXlpKTw9eqFy6avwXdma03MQIjaU\nnEXgoTsyYXe44/qhzuWHsRDuZyyExCjEWdU1vRmMh/EbSyyWf7kZNypcVhhsbhhmTIPmk01gNRrY\n5rwEx8NjAIXwv3ASEmuUnEVAoYjfhzrXH8ZC2ftZSIlRCLOqQ+3N4PKLFeNjsOnYZhwyF6Htzn14\nZO230FTa4e7WHbZlq8C0phvkEFKDkrOIxONDnesqV2izlIWQGIUglOvM9RerTcc248dftmL0W9+i\n9+5jcCcp8M79vWB/eCyGUWImpB6aEEZqxeK2ikKYjEXqC/U6RzLL3eVh/N5G0824Ifv8Yyyash69\ndx9DcdtmmDovD5sHdsIhyy9wM+4oW0WItFDlTGrFosoVymQsIYv3tqyhXudwtioNNByirChHytMT\nMfb/PoE7SYF19/XE5wM7gv27+7zMWY4KlxUmbZPYNJgQEaLkTGpxeVvFuoQwGStSsUycsdprO5hQ\nr3M4X6wa6ya/Yt83GLhuPhQXzuP3ti2wbEwWzlxiqPdaRk060tR6rppHiCRQcia1YlXl1p2MpVAl\ngXF7BF8xxyNx8jWLPdB11mqUUCr+d5enUL5Y+esmT3Ha8Oj2N5D9yw6wKhVsM2fjq5wrcOZcYYNz\ndmiaCZVCxVXzCJEESs6knlhWueokBUxNU2A2W6N+rViLdeLkexZ7fnYb/HayHKcu2Or9/NQFG9Zv\nO1bbxlBmuV/cTd7txA8Y959X0aTKgqPN2kC29g2kde+Cu3wMWKUCh0uKUOYsh1GTjg5NMzGkzcCY\ntTNSNcu90tR6+uJAeEHJmdQjpCVHfIlH4uR7FruXYWF3evwe89fGQLPca7rJnRdK8ciOtbj55+3w\nyJV4t/d92JF9L57v3AkAoJArkNduEAa3HiDYxFd3uZfFVQ6DOh0dTdVfIBTyxPo7IPyi5Ez84nLJ\nUd1xWzGIR+KM1fh+qLhsozpJgTvtxbjx3efR1FaKYxlXYkn/CfjTdDlyrmnW4IuMSqGKy+SvcKtf\nN+PGv377GN+f21f7szKXBTtOfwsAyGs3KGaxEnIxSs4kZvyN2/budAnu6HWZoO9DHY/Eyfcsdq7a\nKKusQMo/p+POD9aBUSjxUb8H8H6nQUhN1yGHp0l/4Va/Nc8/eOEILO5yv695uKQIg1sPEFylT6SL\nkjOJGX/jtp/uOgG7wy2o+1BfPCM7XomTr1nsNe3t2LoJth842+B4qG1M2rYV+ifHQ3H2DDztO8K6\nfDV6tLsGV/M8HLLp2ObaahcIXv1e/Hx/aLkXiTdKziQm+J7wFIpAM7LjkTjjPb7vr72XZujgdHtR\nWhF6G2XWSqTMmoHk994Bq1Si6qnpsE8sAJKSoAZ43YHN5XXjkLnI7zF/1a+bafz5ddFyLxJvlJxJ\nTPA94SkUwWZkxytxxmtLUX8z5l5kAAAgAElEQVTtLa104bYbLkdWh+YhtTFpxzboJz8BxZnT8F7b\nHpXLV4Pp0DHWoYfM4qyAxeW/a9pf9Vvhsjb6/LpouReJN+EO/BFRi9e2nY1tFxnKvwtlC8uaxMl3\nlR+tQO398ZfzQROzzGaFbsokpN99J+Tn/kJVwdOwfL1DUIkZAAyaNBjU6X6P+at+09T6Rp8PAEa1\nATe1ulGQy72ItEVcOc+dOxcHDx6ETCbD9OnT0bHj//5Id+/ejUWLFkGhUCArKwvjxo3jJFgiHrEe\nt412kxAxVPZcCtTeknJHwPYm7dxRXS2fOgnvNZmwLl8Fb8frOI2Pq3XFaqUKHU2ZfseQ/VW/KkXj\nz+/R/Hrcc9VdVDETXkSUnPfu3Ys///wT69evx/HjxzF9+nSsX7++9vgLL7yAtWvXolmzZhgxYgT6\n9++PNm2Ev1Uj4Za/cdvenVrijl6XRf3a0W4SwvdSpngL1N6m6cn+22uzQff8s0h+ey1YhQJVT06F\n/cmnARV3ySoW64prqtxQNzsJ9Hxa20z4ElFyLiwsRE5ODgCgdevWqKiogM1mg06nw6lTp5CWloYW\nLVoAAPr27YvCwkJKzgnI34SnVi3To94hjIvJZvFeyhTvm1tcTKmQQatJ8puce7Zv0SCmpG93Qj9p\nHBQn/4T36mtgXbYK3uu6cB5XuDOrQxHuZidi2ByFJJ6IknNJSQkyMzNrHxuNRpjNZuh0OpjNZhiN\nxnrHTp06FX2kRLRCmfAUTvLiqks6HjOy+bq5xcXWbzvWYKtOALg0Q4eH7shEWVlV9Q+qqqB7YRaS\n174OVi6HfWIBqqY8A6i570kINFOai3XF4W52Eq/NUQgJBSeztVmWjfo1DAYtlEpuKwqTSTpLH6Ta\nFobx4c3PirDnyF8wlztgSk9Gz/Yt8NAdmVAo/CcvfVoyTIZkXLA4Ghxrmp6M1pc3gUYV2q/2xOHX\nw+n2wlLpgiFVHfK/89cWf9b832G/3e/aZBUeubNDWOeKlNPtxaHjpX6PuTwMPIyvuh3ffAM89BBw\n4gRwzTWQvf02tN27I1Yj7+ds5kZnSluc5VDofDDpwv+9l+rfiphJpR1A/NoSUXLOyMhASUlJ7eML\nFy7AZDL5PXb+/HlkZGQEfU2LxR5JKI0ymfSiuMFCKKTclg+2FtdLXhcsjpA2KunYuonfLumOrZvA\nWuFAuO+WEgj73wW7Li4Pg+8OnvF77LuDZ3Fr90s56+IO1PNwwWKH2c8XGaB6Mlj5X2VIfXEWtGtW\ng5XL4Rg/GVVTpwEaDRDD3zuGkcOgTkeZy9LgmEGTDsYmh9kR3vml/LciVlJpB8B9WwIl+oj61Xr3\n7o0tW7YAAIqKipCRkQGdTgcAaNWqFWw2G06fPg2v14vt27ejd+/ekZyGSFyoy5n8yc9ug5yurdAk\nVQO5DGiSqkFO11aCukd0KN3v0WJ8PnywtRgz1+zBtNf2YOaaPfhgazEYn6/2OYGWtfUoO4aM7Bug\nXbMa3rbtUL75P6h69rnqxBxjNTOl/aF1xSTRRVQ5d+nSBZmZmbjnnnsgk8kwa9YsbNq0CXq9Hrm5\nuZg9ezYKCgoAALfddhuuuOIKToMm0hDN2LEY7p4Vjxnhocxa9zf5Te1x4f7v3sOgA59DBsA+biKq\nnpoOJCdHHVM4wp1ZTUiiiHjMecqUKfUeX3311bX/3a1bt3pLqwjxh4vkFa/dtSIRaIY0FzPCw5m1\nXnfyW7Nff8Lkr5ejedkZeFu3gXLdu6hq0z6qWCJFM6UJ8Y92CCO8qano/InHnZliLdAMaS6638Pp\nNlfI5bi396VYfvYzvLx+GppZzsI+djws274DevWKOpZo1cyUpsRMSDXaW5vwKtzlTHyvFw5VoKrW\n7vTCy7BoZDJ6yMLpeVD+8D30E8ZCefwYvFdcCeuy1fD26BldAISQmKHkTHgV6tixUNYLhyoe24OG\ntJGK04mUeS8iedVygGVhf+xxVE37J6AV5lAAIaQaJWciCMHGjqPdrjPe4rU9aKCeB+W+H6qr5aPF\nYC6/AtZlq+DpeQMn5yWExBYlZyJ4Yrg39MXitT2o354HxoOUF59D8sqlkPl8sD/8GKpmzAZSUjg5\nJyEk9ig5E8EL1EVcWulEWaUTLZoIL/HEY3vQGjU9D8oD+6qr5d9+BfOPy2Fd+io8N9zI+fnEgqu7\nXRESb5ScieAF6iIGgK37TuP+W66Kc1TBxXUttssF7cJ50C5fDBnDwPHQI7DNfA74e3OgRFNzt6uD\n5iO1d7vqZGpPd5oioiG8mTSEXESdpEDH1o3fkODQsdKAu4nxraaqjVViVh48AMMtfZGyZAF8l7RC\n+abPYXt5YcImZgD46Ohn2HH629q9uy2ucuw4/S0+OvoZz5EREhpKzkQUcrpe2ugxrrbCFB23G9qX\n5yB9QDaUv/wMx4OjYdmxG54bs/iOjFduxo095/b5Pbbn3D64GXecIyIkfNStTUTBmKpBkzjMfhYL\n5aGfoB8/FspfisC0uhTWJSvhybqJ77AEocRRChfj/8uai3GhxFGKlroWcY6KkPBQ5UxEQeq7iYXM\n7YZ23ot/V8tFcNw/CpZvCikx18GysqiOEyIEVDkT0Yjn7GchUhw5jNTxY6AsOgzmklawLloOT7+b\n+Q6rAb5nSJu0Rqjlarh8DatnjUINk9YYs3Pz3XYiHZSciWiI4U5UMeHxQLt0IbSL5kPm9cIxYiSq\nZr8ANjWN78jqqZkhfchcVDtDuqMpM+4zpFUKFXq06IqdZ75rcKx7864xSZpCaTuRDkrORHSEfCcq\nrimKjkA/YSySDh8E0/KS6mo5O4fvsPzadGwzdpz+tvZxmctS+ziv3aC4xjKs7e2Qy2Q4ZD6CMlc5\njOp0dPx7KVUsCKntRBooORMiRB4PtMsXQ7twHmQeDxz33o+q5+cKrlqu4WbcOGQu8nvscEkRBrce\nEHLFykXXcDxvRcll2wmpQcmZEIFR/PJzdbV88ACY5i1gW7QM7pz+fIcVUIXLWrum+GJlznJUuKww\naRtfqw7Epmu45laUscRF2wm5GM3WJkQovF4kL10IQ24Wkg4egDP/Xlh27hF8YgaANLUeBnW632NG\nTTrS1Pqgr1HTNVzmsoAFW9s1vOnYZq7D5VSaWo90tf8ejVDbfjE348Y5m5nWZCcwqpwJEQDFb79C\nP2EMkg7sB9OsOWwLl8J9y618hxUyhUyB5KRkwGVpcKxD08yg3brx7BrmckY142PwyfGvYPc4/B6/\nuO3Bzk0Ty0gNSs6E8MnrRfKry5Ey/0XI3G448+6B7cV5YNMNfEcWlk3HNuOM7WyDn1+iaxnSJKx4\ndA3HIvFdPBGshlqhRq8W3WrbHuq5aWIZqUHd2oTwRFH8G9Jvz4XuhVnwpRtQ8e6/YF35uugSc6Cq\n1+l1gGGD73vORbd4MFx3mwdqd4oyGYNbD6hNvKGcO1jvAXVxJxZKzoTEG8MgecVSGG6+EUn798E5\nJK96bHnAbXxH1ig344bZXuo3QYRS9QajUqjQ0ZTp91go3eLBxCLxBWq3xVVR2+5Qz83F+0ikg7q1\nCYkjxbGj1TOxf9wLX1MTKl9bCvdtt/MdVqNC6Y5NU+uRrkqDxd0wsYRT9d5+ZS4cXgeOWk7A4iqH\nUZOODk0zcfuVuTDbS6MaI45Ft3lNtV/mZ5y9brtDPXeor0cSAyVnQuKBYZD82qtIeXkOZE4nnHcN\nhW3uArBNhL3EJtgYaO2EKCa0CVH+XPwFIF2Vhu7Nu2BI64H48s9tmPv9kqjHiGOR+GqqfX9jznXb\nHeq5Q309khgoORMSY4rjR6Gf8DiSfvgevqZNUblyDdx3DOY7rKBCmUH9yfGv/CYTlVyFHs2vD2ky\n2MVfACzucnx/bh9O2/6qN8ksmslRsUp8Ne07XFKEMuf/qv267Q7n3HVfz+Ish8HP65HEQMmZkFjx\n+ZC8ZhVSXnyuuloePAS2lxaAbdqU78hCEqw7tsRR2mjydvvcOFLyCxRyRcBKN9AXgL9s5/z+3N/S\nqpolSqnexm8dGkoiDVeoO5GFeu66r6fQ+cDY5FQxJ6iIkrPH48EzzzyDs2fPQqFQ4KWXXsKll15a\n7zmZmZno0qVL7eO3334bCgWt0yOJQX7iOPSTxkG1Zzd8TZqgcsVrcA+6i++wwhKsO5ZlZY0mb6C6\nAg5W6Qb6AuCDz+/P647TXtwl3lRrRKbxGr9fCGK5pWewncjCPbdKoYJJp4fZQZPAElVEs7U///xz\npKam4sMPP8SYMWOwcOHCBs/R6XRYt25d7f8pMZOE8He1bOx3A1R7dsN1+2CU7dwrusQMBJ9BbdIa\nG13+VFeg2dCBllDJG/l4qjtOe/ESJbO91O/yqLqzzWsSKR8VKZ/nJuISUXIuLCxEbm4uAOCGG27A\n/v37OQ2KEDGS//E70u4aCN2Mp8EmJ6Py9bdQufZdsCYT36FF7PYrc9Gj+fUwqg2QQYYmGgNuanUj\nhrQZGDB51xVoGVCg12iha+735zXjtKEsUWJ8DDYUf4o5exbiuT3zMWfPQmwo/hSML/jaa0L4FFG3\ndklJCYzG6huWy+VyyGQyuN1uqFR1xoDcbhQUFODMmTPo378/Ro0axU3EhAiNzwfNW29AN+efkNnt\ncN12B6zzF4PNyOA7sog1NoM6r+2g6m06/1YzZnrIXOS3+xsIPhu6sfHYwVcOwKZjm3G4pAjl7ko0\n0RjqjdOGskRpx+nvaMctIkpBk/OGDRuwYcOGej87ePBgvccsyzb4d0899RQGDRoEmUyGESNGoGvX\nrujQoUOj5zEYtFAque36Npmksy6Q2iJMJlsJ8NBDwI4dgMEArFkD9fDhUMtkfIcWlouvydsH/u13\nBnWT1FQ82Pnues99vNl9cHndeGPfh/jmjz0NXrvHZdfhkuaBl4zVvIbFWQGDJg1KuQLrDn6EX8uL\nUeG2wpicjusv6YhRnfNqx5JTvWo01Rphtpc2bI/WiFbNmqLo0C9+z/f9uR/xYLch0KqS/R4XirrX\npe77o1aKq1tcUn/zcWpL0OScl5eHvLy8ej975plnYDabcfXVV8Pj8YBl2XpVMwAMHz689r979uyJ\n4uLigMnZYrGHG3tAJpMeZrM0JlNQWwTI54Np0wdgp0yFzF4F14CBsL6yBGyzZkCJje/ownLxNXEz\nbuz58ye/z/3+5E/IbXGz3zHToZcPhsyrbFABD2h5S8jXXAENKh0ubCj+tH7F6yjH18e+gdvJ1Kt4\nM43XYIe94RKlqw3tcPp8CUrsZX7P4/A6sarwfTxwbX5IcfGh5rqI/WYYkvmbB/dtCZToI+rW7t27\nN7766iv06dMH27dvR48ePeodP3HiBFauXIkFCxaAYRjs378fAwYMiORUhAiO/NRJ6Cc9AezaATY9\nHdZXXodrWD4gsmq5MZHupsXVbGib24YDFw75PXbxMqqLu9XlkMMHHw6bqyvmtKRUlHsq/L7WUcuJ\n2gliwXB5J6tw0c0wElNEyfm2227D7t27MXz4cKhUKrz88ssAgNdffx3dunVD586d0bx5cwwbNgxy\nuRzZ2dno2LEjp4ETEncsC827byFl9kzIq2zA7bfDMnchfM1b8B0Zp6LdTSvYsqLG1FSIB8yHUOGu\n9Puci78c1HwhYHwMdp0trF1+ZXGXY+eZQpiSmwIe/+ezuIJv28l31RrurTT5/BJBuBVRcq5Z23yx\nRx99tPa/p06dGnlUhPDA5WFQYXMhTaeGOqn+B6/89CnoJz8B1Tfb4UtNQ+Xy1Ugd9yh8IuvCDgVf\n20g2dvvFuvx9OXAzbhSV/ur3+SWO0tpqOpTXChZTvKvWUHsx+P4SQbhHO4SRhMf4fFi/7RgOFJtR\nVumCMVWNzu1MyM9uA4VMBs377yLln9Mht1nhyrkFtoXL4GvRUnTd2OFUVbHYTStYbI1ViHX5+3IQ\nKIGxf/8v1NcKNSZ/VWsshNKL4Wbc+NdvH+P7c/tqj1HXt/hRciYJb/22Y9j64+nax6WVLmz98TR0\npedw/6bFUG3/L3z6VFQuWwVX/r2iS8qRVFWx3E3Ln0AJFgDSVam4LqOj3y8HgRJYDY1CDa1SW+9u\nV8G+aMTiTlbhCtSL0b7JNfjk+Fc4aD7SaJzx+hJBuEfJmSQ0l4fBgWJz/R+yLHKK/ovhK9+EymWH\nOzsH1kXL4Wt5CT9BRimartlIx4/DFSjBpqtTMa3bJOhUOr//NlACq+Fi3HiyyzioFEkhf9EQyi0c\nh7QZCJb1Yc+5fXAxLgCAWq7G0fLfcbbqr4D/Nl5fIgj3ItohjBCpqLC5UFbpqn1stJZi1sdzMPHr\nFQDL4swLi1Dx4UeiTcyh7KIlBIF2CrvO1LHRxFxjSJuB6NOyV8AtP01aY1hbZwbbvjRe1ahCroBM\nJq9NzADg8rmCJmaA7gMtZlQ5k4SWplPDmKpGaYUT2T9vxyM73oDOZceBf3TCursK8OSoO0TXjV1X\nKF2zl0AYVVU049wKuQL3XH0XkrUqfH3smwbHI02m8R579yfU8Xh/6D7Q4kXJmSQ0dZICN5qATu+8\niG6//wh7kgYrcsZiS4dbkNPt0gaztsVGKF2zoeBinHtU5zy4nQxnyVQhV2Bw6wHo3bIbWFYGk9YY\n92QXbDzeH6M6HR1N7ek+0CJGyZkkLpaFesO/8NCMpyCvqEDRFddhcc7j8F5yGXLaNUV+dhu+I4wa\nX8uiolF3nDvcdbtcTWRzM26UOSvwzelvcaTkV16XJ4Uy4a2uHs2vxz1X3SXIa0tCR8mZJCT5+XPQ\nTZkI9ZYvwWpTYJ2/GGn3jsTkKrffdc5iJoSu2XBFu243lIls/hJ/3fNenAz5Wp4U6AvWJbqWcHod\nDa4rrW0WP0rOJLGwLNQf/Ru66VMhLy+H+8YsWBevgO8fl0MNIEMlvT+JeC+L4kIsN/8IlPhD2QiF\nj+VJgb5gMSwjmutKQie9TyJCGiG7cAH6qZOg/vLz6mr55YVwPjgakCfGooV4LYuKVqw3/2gs8ftY\nBkdK/O80Vhcfy5MCfcFSQCGK60rCQ8mZSB/LQv3xRuimTYHcYoH7hhthXbISvsuv4Dsy4kcsN/8I\nlPgPlRSh3OV/T++6+JxIJ5YvWCR6iVEykIQlM5uR+tD9SB0zGjKXC9aXXkHFps8pMQtYzQQof6JN\njIESf4XLijRVatDXEOpEOiItlJyJZKk/2QRjVneoN38Kd88bULZ9N5yjH0uYbmyxiuXmH8ESf8em\n/s8LAE00BtzU6kZBT6Qj0kHd2kRyZCUl0D1TAM2nH4NNTobthZfheHgMJWURidUM82BLy2pmOtc9\n77XGq3HTpb1h1KRTxUzihpIzkRTVZ59A//RkyEtK4OneE9Zlr4K5UvzrlRNNLGeYB0r8YpzZTqSJ\nkjORBFlpKXTTCqD5v01gNRrYnp8LxyNjAQWt9xSzWEyACiUBBztvuJujEBIuSs5E9FSbP4N+6iTI\nS8zwdO0O67JVYNq05TssInCRJP5oN0chJFSUnIloycpKoZs+FZpNG8Gq1bDNegGOMeOoWhY4MVed\nsdwchZC6KDkTUVJ9uRn6KRMhN1+A5/qusC5bDaZtO77DIgGIveqM9eYohNRF01eJqMgsZdA//gjS\nRg6HrLICtmefR/nn/6HELAI1VWeZywIWbG3VuenYZr5DC0kom6MQwhVKzkQ0VFu+hKFPD2g2roen\ncxdYtu6CY/wk6sYWgWBVp5txxzmi8MVyc5RouBk3zPZSUbyHJHTUrU0ET1ZugW7mM9D8+0OwKhVs\nM2fD8fgEQEm/vvEUzVhxLLfkjBeh3X5T7MMEJDD6dCOCptq6BbonJ0Bx7i94OnWunol9zbV8h5VQ\nuEgCge5JzGfVGS4h3X6TJqdJGyVnIkiyinKk/HM6kj98D2xSEqqm/xP2JyZRtcwDLpKA0KrOSAll\nkxKanCZ9NOZMBCdp239gyOqJ5A/fg6fjdbD8Zyfsk6ZQYuYBl2PFQ9oMxE2tbkQTjQEyyES9V3XN\nGmm+EiBNTpO+iD/t9u7di4kTJ2Lu3Lno169fg+Offvop3nnnHcjlctx9993Iy8uLKlAifbLKCqTM\nmoHk998Fq1Si6ukZsE94EkhK4ju0hMXlWLFQqk4pkMowAWlcRMn55MmTeOutt9ClSxe/x+12O1au\nXImNGzciKSkJw4YNQ25uLtLT/c90JCRp+3+hn/wEFGfPwNO+Y/XYcvsOfIeV8GKRBOiexNGTyjAB\naVxE3domkwkrVqyAXu//D/PgwYPo0KED9Ho9NBoNunTpgv3790cVKJEmmbUSuoIJSM+/C/IL51E1\n5RmUf7WNErNAxPL2jSQ6UhomIA1FVDknJycHPF5SUgKj0Vj72Gg0wmw2R3IqImFJ32yvrpZPn4L3\n2vaoXL4aTIeOfIdFLiKkGcrkf2iYQNqCJucNGzZgw4YN9X42fvx49OnTJ+STsCwb9DkGgxZKJbdr\n80wm6Yy7SKotGgBTpwKvvVa9gcizz0I5cyaMKvF9sEjlugRrx+PN7oPL64bFWQGDJg1qpXCvlVSu\nCRB6Wy6BsIcJEvGaRCtocs7Lywt7MldGRgZKSkpqH1+4cAHXXXddwH9jsdjDOkcwJpMeZrM0ZixK\nqi2HfwDz4CgoTp2E95prYV22Ct5OnYEKFwAX3+GFRSrXJZx2KKBBpUO410oq1wSQTluk0g6A+7YE\nSvQxWUrVqVMnHD58GJWVlaiqqsL+/fvRtWvXWJyKiIXNBt3TTwI33wz52TOomjwFlq+/qU7MhBBC\n6olozHnHjh1Yu3YtTpw4gaKiIqxbtw5vvvkmXn/9dXTr1g2dO3dGQUEBRo8eDZlMhnHjxjU6eYxI\nX9J3u6CfOA6Kk38A116L8iWvwnud/5n+hBBCABkbyoBwHHDd7UFdKQJQVQXdC7OQvPZ1sHI5HOMn\nQzvvRZgrpbFBv2ivy0Wk0g6A2iJEUmkHEN9ubdpyicREUuF30E8YC8Wff8Dbth2sy1fD26UrtGo1\nAGkkZyI90dzcgxAuUXIm3LLbkTL3OSSvWQ3IZLA/MQlVT00HNBq+IyOkUXSHJyI0lJwJZ5R7CqGf\nOBbK30/A26Zt9Uzsrt35DouQoOgOT0Ro6MYXJHp2O1KenYb0wQOg+ON32B+fAMt/v6XETESBy5t7\nEMIVqpxJVJR7v4d+whgoTxyH98rWsC5bDW/3HnyHRUjIuLy5ByFcocqZRMbhQMrsmUi/4xYofj8B\n+2PjYNn2HSVmIjo1N/fwh+7wRPhClTMJm/LHvdBPGAvlsaPwXnElrEtXwduzF99hERIRusMTESJK\nziR0TidS5s9F8qvLAJaF/dGxqJo+C9Bq+Y6MkICCLZGim3sQoaHkTEKi3P9jdbVc/BuYf1wO67JV\n8PTqzXdYJESJun431CVSdIcnIjSUnElgLhdSXnkJySuWQObzwf7wY6iaMRtISeE7MhKCRF+/G+4S\nKZVCRZO/iCDQhDDSKOVP+2HIzYJ22SL4Wl2G8o83o2ruK5SYRaQmOZW5LGDB1ianTcc28x1azMVq\niZSbccNsL6UlViSmqHImDblc0C6aB+2yxZAxDBwPPQLbzOcAnY7vyEgYgiWnwa0HSLrrluslUone\nC0Hii5IzqUd56Cfox4+B8pefwVx6GaxLVsLTpy/fYZEIJPr63ZolUmUuS4NjkSyRkvouYok6L0Go\nKDmTam43tIvmQ7t0YXW1PHI0qmY9D1ZHazzFiuvkJDZcLpGSci8E9QgIEyVnAsXhQ0gdPwbKn4+A\naXUprItXwNO3H99hkSjR+l3ulkhJuRdC6j0CYkXJOZF5PNAuWQDt4lcg83rhuH8UqmbPAatP5Tsy\nwpFEX7/L1RIpqfZCSLlHQOwoOScoxZHD0E8Yi6Qjh8Bc0grWRcvh6Xcz32ERjtH63WrRLpGSai+E\nlHsExI6Sc6LxeKBdtgjahfOqq+X7HkDVcy+CTU3jOzISQ7R+N3pS7IWQao+AFFByTiCKn4uqq+VD\nP4Fp0RK2RcvgvvkWvsMiRBSk2Ash1R4BKaDknAi8XmiXL4Z2wcuQeTxwDB+Bqufngk3zfyceQkjj\npNYLIcUeASmg5Cxxil9/gX7CGCT9dABM8xbV1XJOf77DIoQIhBR7BKSAtu+UKq8XyUsXwpDTB0k/\nHYDz7uGw7NxDiZkQ4ldNjwAlZmGgylmCFL/9Wl0tH9gPJqMZbAuXwd3/Vr7DIoQQEiKqnKWEYZC8\nfEl1tXxgP5zD8mHZ9T0lZkIIERmqnCVCcbS4eib2vh/gM2WgcsFSuG+lCR2EECJGEVfOe/fuRa9e\nvbB9+3a/xzMzM3H//ffX/p9hmIiDJAEwDJJXLoMhuzeS9v0A55A8lO36nhIzIYSIWESV88mTJ/HW\nW2+hS5cujT5Hp9Nh3bp1EQdGglMcPwr9+LFI+nEvfE1NqFy9BO6Bd/AdFiEB0d2PCAkuouRsMpmw\nYsUKzJgxg+t4SCgYBslrViFl7vOQOZ1w3jkEtpcWgm0inbWXRHro7keEhC6i5JycnBz0OW63GwUF\nBThz5gz69++PUaNGBXy+waCFUsntH6jJJJ2t52rbcvQoMGoU8N13gMkErFsHzbBh0PAbXlgkeV1E\nLh7tePvAv/3e/UirTcKDne/m7DxSuSaAdNoilXYA8WtL0OS8YcMGbNiwod7Pxo8fjz59+gT8d089\n9RQGDRoEmUyGESNGoGvXrujQoUOjz7dY7CGGHBqTSQ+z2crpa/LFZNLDfL4CyW+sRsqLz0HmcMA5\n6C7YXl4ItmlTQETtlNx1kUBb4tEON+PGnj9/8nvs+5M/IbfFzZx0cUvlmgDSaYtU2gFw35ZAiT5o\ncs7Ly0NeXl7YJx0+fHjtf/fs2RPFxcUBkzMJ4PhxpN0/EqrC7+AzGmFdtgquwUP4joqQkNHdjwgJ\nT0zWOZ84cQIFBQVgWRZerxf79+9H27ZtY3EqafP5oHljNdCxI1SF38E1cBDKdu6lxExEp+buR/7Q\n3Y8IaSiiMecdO3Zg7bwuihAAAA2tSURBVNq1OHHiBIqKirBu3Tq8+eabeP3119GtWzd07twZzZs3\nx7BhwyCXy5GdnY2OHTtyHbukyf/4HfpJ46Da/S1gNKJy8Qq47hwKyGR8h0ZI2OjuR4SER8ayLMt3\nEAA4H5MQ7TiHzwfN22uhe/6fkNmr4Lr1dqjfXAOzIoXvyDgh2uvih1TaEq921MzW9nf3I65ma0vl\nmgDSaYtU2gEIbMyZxI/85J/V1fK3O+FLT4d14RtwDcmDKSNVVJO+CPGH7n5ESOgoOQsBy0LzzptI\nee5ZyKtscPW/FbYFS+Fr1pzvyAjhnNTuh0xILFBy5pn81EnoJ4+Haud2+NLSUbniNbjy7qGxZUII\nSWCUnPnCstC89w5SZs2A3GaF65YB1dVy8xZ8R0YIIYRnlJx5ID99Cvonx0O1Yxt8qWmoXLYKrvx7\nqVomhBACgJJzfLEsNB+sQ8qz06qr5ZtzYVu0HL4WLfmOjBBCiIBQco4T+dkz1dXytq3w6VNhXbIS\nzuEjqFomhBDSACXnWGNZqP/1PnTPToO8sgLufjfDumg5fJe04jsyQgghAkXJOYbkf52FrmAC1Fu/\nhk+nh3XRcjjve4CqZUIIIQFRco4FloV6/QfV1XJFOdxZ/WBdsgK+VpfyHRkhhBARoOTMMfm5v6Cb\nMhHqr7+CL0UH64KlcN7/IFXLhPDMzbhpZzIiGpScucKyUG9cD92MpyAvL4e7z02wLl4O32X/4Dsy\nQhJazZ7eh8xFsLjKYVCno6OJ2z29CeEaJWcOyM6fh37qJKi/2gxWmwLr/MVwjnyIqmVCBGDTsc31\n7oZV5rLUPs5rN4ivsAgJKCb3c04YLAv1R/+GMas71F9thvvGLJR9Uwjng6MpMRMiAG7GjUPmIr/H\nDpcUwc244xwRIaGh5Bwh2YULSB01AqljH4bM5YL1pQWo2PgpfP+4nO/QCCF/q3BZYXGV+z1W5ixH\nhYvu9kaEibq1w8WyUH+yCbpnCiAvK4O7V29Yl6yE74or+Y6MEHKRNLUeBnU6ylyWBseMmnSkqRu/\nny4hfKLKOQwysxmpox9A6qOjIHM4YJ07HxUfb6bETIhAqRQqdDRl+j3WoWkmzdomgkWVc4hUn34M\n/dNPQl5aCk+PXqhc+ip8V7bmOyxCSBBD2gwEUD3GXOYsh1GTjg5NM2t/TogQUXIOQlZSAt20KdB8\nsglscjJsc16C45GxgJw6HQgRA4Vcgbx2gzC49QBa50xEg5JzAKrPPoH+6cmQl5TA060HrMteBdO6\nLd9hEUIioFKoYNI24TsMQkJCydkPWVlpdbX88UdgNRrYnpsLx6NjAQVtWEAIIST2KDlfRPXF59BP\nnQS5+QI813eDdflqMG2oWiaEEBI/lJz/JisrhW76U9Bs2gBWrYZt1gtwjBlH1TIhhJC4o+QMQPXV\nF9BNmQjFhfPwdLke1mWrwbS7iu+wCCGEJKiETs6ycgt0M56GZsO/wKpUsM18Do7HxwPKhH5bCCGE\n8CyiLOT1ejFjxgycPHkSDMPgqaeeQteuXes959NPP8U777wDuVyOu+++G3l5eZwEzBXV119CVzAR\nivPn4OncpbpavupqvsMihBBCIkvOn3zyCZKTk/Hhhx/i6NGjmDZtGjZu3Fh73G63Y+XKldi4cSOS\nkpIwbNgw5ObmIj09nbPAIyWrKIdu5jPQrP8AbFISbDNmwTFuIlXLhBBCBCOijDRo0CDcfvvtAACj\n0Yjy8vobyx88eBAdOnSAXl+9b22XLl2wf/9+ZGdnRxludFT//Rq6JydA8ddZeDp1hnXZKjDXXMtr\nTIQQQsjFIkrOSUlJtf/9zjvv1CbqGiUlJTAajbWPjUYjzGZzwNc0GLRQKrmdGW0y/b2pfUUFMHky\n8NZbQFISMGcOkp5+GsY67RC62rZIALVFeKTSDoDaIkRSaQcQv7YETc4bNmzAhg0b6v1s/Pjx6NOn\nD95//30UFRVh9erVAV+DZdmggVgs9qDPCYfJpIfZbEXStq3QPzkeirNn4OnQqbpazmwPlDsBODk9\nZ6zUtEUKqC3CI5V2ANQWIZJKOwDu2xIo0QdNznl5eX4nc23YsAHbtm3Dq6++Wq+SBoCMjAyUlJTU\nPr5w4QKuu+66cGKOXmUldE9OQPJ774BVKlH11HTYJxZUV86EEEKIgEV094ZTp07hX//6F1asWAG1\nWt3geKdOnXD48GFUVlaiqqoK+/fvbzCbO5YUxb8B7dsj+b134M3sAMuWHbBPeYYSMyGEEFGIaMx5\nw4YNKC8vx6OPPlr7s7Vr1+Ltt99Gt27d0LlzZxQUFGD06NGQyWQYN25c7eSweFAWHQbOn0fVlGdg\nnzQFUNEdaAghhIiHjA1lQDgOuB6TMKVrYC4Xx5hyMDRmI0xSaYtU2gFQW4RIKu0A4jvmLN2bElMX\nNiGEEJGSbnImhBBCRIqSMyGEECIwlJwJIYQQgaHkTAghhAgMJWdCCCFEYCg5E0IIIQJDyZkQQggR\nGErOhBBCiMBQciaEEEIEhpIzIYQQIjCUnAkhhBCBEcyNLwghhBBSjSpnQgghRGAoORNCCCECQ8mZ\nEEIIERhKzoQQQojAUHImhBBCBIaSMyGEECIwkknOXq8XTz/9NIYPH467774bP/74Y4PnfPrppxg6\ndCjy8vKwYcMGHqIM3d69e9GrVy9s377d7/HMzEzcf//9tf9nGCbOEYYmWDvEck08Hg8KCgowfPhw\njBgxAqdOnWrwHDFck7lz5yI/Px/33HMPDh06VO/Y7t27MWzYMOTn52PlypU8RRiaQO3Izs7Gvffe\nW3sdzp8/z1OUoSkuLkZOTg7ee++9BsfEdE2AwG0R23WZP38+8vPzMXToUHz99df1jsXlurASsXHj\nRnbWrFksy7JscXExO3To0HrHq6qq2FtuuYWtrKxkHQ4HO3DgQNZisfAQaXB//vknO2bMGPbxxx9n\nt23b5vc53bt3j3NU4QvWDjFdk02bNrGzZ89mWZZld+3axU6cOLHBc4R+Tb7//nv20UcfZVmWZY8d\nO8befffd9Y7feuut7NmzZ1mGYdjhw4ezR48e5SPMoIK1o1+/fqzNZuMjtLBVVVWxI0aMYGfOnMmu\nW7euwXGxXBOWDd4WMV2XwsJC9uGHH2ZZlmXLysrYvn371jsej+simcp50KBBmDZtGgDAaDSivLy8\n3vGDBw+iQ4cO0Ov10Gg06NKlC/bv389HqEGZTCasWLECer2e71CiEqwdYromhYWFyM3NBQDccMMN\ngo0zkMLCQuTk5AAAWrdujYqKCthsNgDAqVOnkJaWhhYtWkAul6Nv374oLCzkM9xGBWqH2KhUKqxZ\nswYZGRkNjonpmgCB2yI23bp1w9KlSwEAqampcDgctT1h8boukknOSUlJUKvVAIB33nkHt99+e73j\nJSUlMBqNtY+NRiPMZnNcYwxVcnIyFApFwOe43W4UFBTgnnvuwVtvvRWnyMITrB1iuiZ1Y5XL5ZDJ\nZHC73fWeI/RrUlJSAoPBUPu47vttNptFdS0aa0eNWbNmYfjw4ViwYAFYAW+CqFQqodFo/B4T0zUB\nArelhliui0KhgFarBQBs3LgRWVlZtZ9l8bouSs5fMQ42bNjQYHxy/Pjx6NOnD95//30UFRX9f3v3\nD5JMHMdx/H1RthRFoFG4NEQRRAWGwVGDUDRJi0PQ5hRBSxANRWt/pKUIi05qK2poCRQig5bAEKI/\ng4ME1dCfKWvK8JmeI5/HtKd4ujv5vqa7+4l+v/cRvvC74QgGg3m/wyx/jHy95DM+Po7X60VRFIaG\nhnC5XLS2tv7PUvP6ah/vmTmT09PTrPNctZotk0LMcr+/688+RkdH6e7upqqqipGRESKRCP39/QZV\nJ36zYi77+/vs7OwQCoV+/LctOZx9Ph8+n++v69vb2xwcHLC8vExZWVnWmsPh4PHxUT+/v7+nvb39\nv9dayEe9FDI4OKgfd3V1kUgkDB0EX+nDSplMTEzw8PBAc3Mzr6+vZDIZbDZb1mfMlsmfct1vu92e\nc+3u7s6025P5+gAYGBjQj3t6ekgkEqYfArlYKZPPsFouR0dHBINB1tbWsh7N/VQuRbOtfX19zebm\nJktLS/r29nttbW2cnZ3x9PTEy8sL8Xgcl8tlQKXfl0wmGRsbI5PJkE6nicfjNDY2Gl3WP7NSJqqq\nEg6HAYhGo7jd7qx1K2SiqiqRSASAi4sLHA4HFRUVADidTp6fn7m5uSGdThONRlFV1chyP5Svj1Qq\nhd/v1x85xGIx0+XwWVbKpBCr5ZJKpZibm2NlZYXq6uqstZ/KpWjeSrWwsMDe3h719fX6NU3TWF9f\np7Ozk46ODsLhMJqm6duOXq/XwIo/dnh4iKZpJJNJampqsNvthEIhVldX9V7m5+c5Pj6mpKQEj8fD\n8PCw0WX/5TN9WCWTt7c3Jicnubq6wmazMTMzQ11dneUyCQQCnJycoCgK09PTXF5eUllZSW9vL7FY\njEAgAEBfXx9+v9/gaj+Wr4+NjQ12d3cpLy+npaWFqakpFEUxuuSczs/PmZ2d5fb2ltLSUmpra/F4\nPDidTstlUqgXK+WytbXF4uIiDQ0N+jW3201TU9OP5VI0w1kIIYQoFkWzrS2EEEIUCxnOQgghhMnI\ncBZCCCFMRoazEEIIYTIynIUQQgiTkeEshBBCmIwMZyGEEMJkZDgLIYQQJvMLmSirGBEqUbEAAAAA\nSUVORK5CYII=\n",
            "text/plain": [
              "<matplotlib.figure.Figure at 0x7fae9b9a6cf8>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "metadata": {
        "id": "nC-bxsmVrgkO",
        "colab_type": "code",
        "outputId": "53eaee1c-0694-4ad4-cc56-3d07037cedd9",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 415
        }
      },
      "cell_type": "code",
      "source": [
        "point1 = torch.Tensor([1.0, -1.0])\n",
        "point2 = torch.Tensor([-1.0, 1.0])\n",
        "plt.plot(point1.numpy()[0], point1.numpy()[1], 'ro')\n",
        "plt.plot(point2.numpy()[0], point2.numpy()[1], 'ko')\n",
        "plot_fit(\"Trained Model\")\n",
        "print(\"Red point positive probability = {}\".format(model.forward(point1).item())) \n",
        "print(\"Black point positive probability = {}\".format(model.forward(point2).item())) \n",
        "print(\"Red point belongs in class {}\".format(model.predict(point1))) \n",
        "print(\"Black point belongs in class = {}\".format(model.predict(point2))) "
      ],
      "execution_count": 0,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\nAABJRU5ErkJggg==\n",
            "text/plain": [
              "<matplotlib.figure.Figure at 0x7fae9b7dfcf8>"
            ]
          },
          "metadata": {
            "tags": []
          }
        },
        {
          "output_type": "stream",
          "text": [
            "Red point positive probability = 0.9424158334732056\n",
            "Black point positive probability = 0.05055497586727142\n",
            "Red point belongs in class 1\n",
            "Black point belongs in class = 0\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "metadata": {
        "id": "YsqmUt5f7ak7",
        "colab_type": "code",
        "colab": {}
      },
      "cell_type": "code",
      "source": [
        ""
      ],
      "execution_count": 0,
      "outputs": []
    }
  ]
}